{
  "openapi": "3.0.1",
  "info": {
    "title": "We Are Learning API",
    "description": "Production",
    "version": "v1"
  },
  "paths": {
    "/api/ai": {
      "post": {
        "tags": [
          "AI"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AIChatMessageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AIChatMessageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AIChatMessageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AIChatMessageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Message"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Message"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Message"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/ai/{simulationId}/generate-dialogue-node-text": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Generate text for a new dialogue node with text and animation using AI",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateDialogueNodeTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateDialogueNodeTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateDialogueNodeTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateDialogueNodeTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/{simulationId}/generate-response-node-text": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Generate text for a new response node using AI",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateResponseNodeTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateResponseNodeTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateResponseNodeTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateResponseNodeTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/transform-text": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Use Azure OpenAI Services to transform text",
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AICompletionTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AICompletionTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AICompletionTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AICompletionTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AICompletionTextDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AICompletionTextDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AICompletionTextDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/{simulationId}/get-first-speaker-index": {
      "get": {
        "tags": [
          "AI"
        ],
        "summary": "Use AI to determine who the first to speak should be",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/stories/generate-animated-story-script": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Generates a list of dialogue node texts for an animated story",
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/stories/generate-interactive-story-script": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Generates a list of node texts for an interactive story",
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateStoryScriptRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/simulations/{simulationId}/generate-title": {
      "get": {
        "tags": [
          "AI"
        ],
        "summary": "AI-generate title for story",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai/{simulationId}/set-character-idle-and-expression": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Use AI to set character idle and facial expression for a node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AISetIdleAndExpressionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AISetIdleAndExpressionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AISetIdleAndExpressionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AISetIdleAndExpressionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        },
        "deprecated": true
      }
    },
    "/api/ai/{simulationId}/{nodeId}/auto-animate": {
      "post": {
        "tags": [
          "AI"
        ],
        "summary": "Use AI to auto animate a node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "includeGestures",
            "in": "query",
            "description": "",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/ai-studio/folders": {
      "get": {
        "tags": [
          "AiStudioFolders"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioFolderDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "AiStudioFolders"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddAiStudioFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddAiStudioFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddAiStudioFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddAiStudioFolderDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/folders/move": {
      "post": {
        "tags": [
          "AiStudioFolders"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/folders/{id}": {
      "put": {
        "tags": [
          "AiStudioFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditAiStudioFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditAiStudioFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditAiStudioFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditAiStudioFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "AiStudioFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/script/translate": {
      "post": {
        "tags": [
          "AiStudioScript"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateAiStudioScriptRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateAiStudioScriptRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateAiStudioScriptRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateAiStudioScriptRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TranslateAiStudioScriptResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslateAiStudioScriptResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslateAiStudioScriptResponse"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAiStudioSessionRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAiStudioSessionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAiStudioSessionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAiStudioSessionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "AiStudioSessions"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AiStudioSessionDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AiStudioSessionDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AiStudioSessionDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}": {
      "get": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAiStudioSessionRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAiStudioSessionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAiStudioSessionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAiStudioSessionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/generate": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateAvatarVideoRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateAvatarVideoRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateAvatarVideoRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateAvatarVideoRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/cancel": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/reopen": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/audio/text-to-speech": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateSessionTtsAudioRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateSessionTtsAudioRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateSessionTtsAudioRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateSessionTtsAudioRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/image/turns": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string"
                  },
                  "referenceTurnId": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "referenceImage": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "prompt": {
                  "style": "form"
                },
                "referenceTurnId": {
                  "style": "form"
                },
                "referenceImage": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/image/turns/{turnId}/select": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "summary": "Marks one completed turn as the image this session keeps, saving it to the media library.\r\nSeparate from generating because the library item is deliberate: ten attempts at one\r\nbackground must not put ten images in the customer's library.",
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "turnId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/audio": {
      "post": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/sessions/{sessionId}/folder": {
      "put": {
        "tags": [
          "AiStudioSessions"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioSessionRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioSessionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioSessionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveAiStudioSessionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AiStudioSessionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/ai-studio/webhooks/{providerName}/{tenantId}/{sessionId}": {
      "post": {
        "tags": [
          "AiStudioWebhooks"
        ],
        "parameters": [
          {
            "name": "providerName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sessionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/billing/ai/subscription": {
      "get": {
        "tags": [
          "AISubscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/subscription/activate": {
      "post": {
        "tags": [
          "AISubscription"
        ],
        "parameters": [
          {
            "name": "Idempotency-Key",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIBillingStatusDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/subscription/creator-top-up": {
      "put": {
        "tags": [
          "AISubscription"
        ],
        "parameters": [
          {
            "name": "enabled",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/billing/ai/usage": {
      "get": {
        "tags": [
          "AISubscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AICreditsUsageByUserDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AICreditsUsageByUserDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AICreditsUsageByUserDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/packages": {
      "get": {
        "tags": [
          "AISubscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AIPackageDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AIPackageDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AIPackageDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/generation/cost": {
      "get": {
        "tags": [
          "AISubscription"
        ],
        "parameters": [
          {
            "name": "seconds",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/image/cost": {
      "get": {
        "tags": [
          "AISubscription"
        ],
        "parameters": [
          {
            "name": "resolution",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AIOperationCostDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/top-ups": {
      "get": {
        "tags": [
          "AITopUp"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpGrantDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpGrantDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpGrantDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "AITopUp"
        ],
        "parameters": [
          {
            "name": "Idempotency-Key",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/PurchaseAITopUpRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PurchaseAITopUpRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PurchaseAITopUpRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PurchaseAITopUpRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AITopUpPurchaseResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AITopUpPurchaseResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AITopUpPurchaseResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/billing/ai/top-ups/packs": {
      "get": {
        "tags": [
          "AITopUp"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpPackDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpPackDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AITopUpPackDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/attachments": {
      "post": {
        "tags": [
          "Attachment"
        ],
        "summary": "Uploads attachment to Azure Blob storage",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Attachment"
        ],
        "summary": "Download Azure Blob storage attachment",
        "parameters": [
          {
            "name": "filePath",
            "in": "query",
            "description": "Path to the Blob attachment. Example: \"attachments/8acac807-8f2f-4394-8a17-6a3281f96e84.jpg\"",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/attachments/compressed": {
      "get": {
        "tags": [
          "Attachment"
        ],
        "summary": "Download Azure Blob storage attachment",
        "parameters": [
          {
            "name": "filePath",
            "in": "query",
            "description": "Path to the Blob attachment. Example: \"attachments/8acac807-8f2f-4394-8a17-6a3281f96e84.jpg\"",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/audio/convert/wav": {
      "post": {
        "tags": [
          "Audio"
        ],
        "summary": "Convert Audio file to WAV format\r\nVerified supported formats: WAV, MP4, M4A, AAC, OGG, FLAC",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/audio/isolate-voice": {
      "post": {
        "tags": [
          "Audio"
        ],
        "summary": "Isolate and enhance voice from audio file. Returns mp3 format",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/audio/isolate-voice-and-convert": {
      "post": {
        "tags": [
          "Audio"
        ],
        "summary": "Isolate and enhance voice from audio file, and convert to WAV format",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/audio-tags": {
      "get": {
        "tags": [
          "AudioTags"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/AudioTagCatalogDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AudioTagCatalogDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/AudioTagCatalogDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/billings/plans": {
      "get": {
        "tags": [
          "Billings"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PlanDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PlanDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PlanDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/billings/subscriptions": {
      "post": {
        "tags": [
          "Billings"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Billings"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDetailsDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDetailsDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDetailsDto"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Billings"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/billings/invoices": {
      "get": {
        "tags": [
          "Billings"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/billings/invoice-to-email": {
      "put": {
        "tags": [
          "Billings"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditInvoiceToEmailAddressDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditInvoiceToEmailAddressDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditInvoiceToEmailAddressDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditInvoiceToEmailAddressDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/billings/subscriptions/cancel": {
      "post": {
        "tags": [
          "Billings"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/billings/plan": {
      "put": {
        "tags": [
          "Billings"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectedPlanDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectedPlanDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectedPlanDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectedPlanDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/cast/{characterId}/add": {
      "post": {
        "tags": [
          "Cast"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddCastCharacterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCastCharacterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCastCharacterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddCastCharacterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AddCharacterToCastResultDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AddCharacterToCastResultDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AddCharacterToCastResultDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/cast/{characterId}/edit": {
      "put": {
        "tags": [
          "Cast"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditCastCharacterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditCastCharacterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditCastCharacterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditCastCharacterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/cast/{characterId}/remove": {
      "delete": {
        "tags": [
          "Cast"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationCharacterDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/characters": {
      "post": {
        "tags": [
          "Characters"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Characters"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CharacterDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CharacterDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CharacterDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/characters/{characterId}": {
      "put": {
        "tags": [
          "Characters"
        ],
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCharacterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Characters"
        ],
        "parameters": [
          {
            "name": "characterId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/{tenantId}/characters/{characterId}": {
      "get": {
        "tags": [
          "CharactersPublic"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/code": {
      "put": {
        "tags": [
          "CodeNode"
        ],
        "summary": "Settings-only update: the continue button and the color/gradient\r\nbackground. The uploaded html and its file name are untouched — those\r\ngo through the html route below.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCodeNodeSettingsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCodeNodeSettingsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCodeNodeSettingsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCodeNodeSettingsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/code/html": {
      "post": {
        "tags": [
          "CodeNode"
        ],
        "summary": "Uploads (or replaces) the node's html file. Every upload writes a new\r\nversioned blob and the node is patched to point at it; the previous\r\nversion is deleted afterwards.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UploadCodeNodeHtmlDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UploadCodeNodeHtmlDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UploadCodeNodeHtmlDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UploadCodeNodeHtmlDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "CodeNode"
        ],
        "summary": "The stored html, served as text/html. This is how the editor fetches\r\nthe uploaded file back — it goes through the same authorization as the\r\nPUT. 404 while nothing has been uploaded yet.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/code/images": {
      "post": {
        "tags": [
          "CodeNode"
        ],
        "summary": "Uploads one image the html references by relative path (name,\r\ne.g. `images/hero.png`). The blob is content-addressed and tenant-wide;\r\nthe node's image manifest gains or replaces the entry for that name. The\r\neditor rewrites the html's references to the returned url itself and then\r\nuploads the html through the route above — the server never parses it.\r\nUpload images one at a time: each call patches the node under its etag.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/code/images/{name}": {
      "put": {
        "tags": [
          "CodeNode"
        ],
        "summary": "Points an existing image slot (name, the relative\r\npath the html references, so it may contain slashes) at a tenant media\r\nlibrary asset instead of an uploaded file. The reference is recorded on\r\nthe node for the library's usage check. The editor swaps the url in the\r\nhtml itself afterwards.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "name",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CodeNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments": {
      "get": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CommentDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CommentDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CommentDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCommentDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCommentDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCommentDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCommentDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CommentDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/{commentId}": {
      "patch": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCommentDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCommentDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCommentDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCommentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/{commentId}/resolve": {
      "post": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveCommentDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveCommentDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveCommentDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ResolveCommentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/{commentId}/messages": {
      "post": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMessageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMessageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMessageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMessageDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/messages/{messageId}": {
      "patch": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "messageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMessageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMessageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMessageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMessageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentMessageDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "messageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/{commentId}/read": {
      "post": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/stories/{simulationId}/comments/{commentId}/unread": {
      "post": {
        "tags": [
          "Comments"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "commentId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/dashboard": {
      "get": {
        "tags": [
          "Dashboard"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/dashboard/stories/recently-deleted": {
      "get": {
        "tags": [
          "Dashboard"
        ],
        "parameters": [
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/DeletedStorySortBy"
            }
          },
          {
            "name": "sortOrder",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "x-continuation-token",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDtoPaginatedDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDtoPaginatedDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDtoPaginatedDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/dashboard/stories/{simulationId}/restore": {
      "post": {
        "tags": [
          "Dashboard"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardSimulationDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/edges": {
      "post": {
        "tags": [
          "Edge"
        ],
        "summary": "Creating a new Edge Item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEdgeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEdgeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEdgeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEdgeDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Edge"
        ],
        "summary": "Retrieving all Edges by the simulationId",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EdgeDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EdgeDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EdgeDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/edges/{edgeId}": {
      "get": {
        "tags": [
          "Edge"
        ],
        "summary": "Retrieving an Edge using its edgeId",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "edgeId",
            "in": "path",
            "description": "The Id of the Edge item to be retrieved",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EdgeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EdgeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EdgeDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "put": {
        "tags": [
          "Edge"
        ],
        "summary": "Updating Edge item",
        "description": "Updates an existing item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "edgeId",
            "in": "path",
            "description": "Id of an existing Edge that needs to be updated",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditEdgeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditEdgeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditEdgeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditEdgeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "delete": {
        "tags": [
          "Edge"
        ],
        "summary": "Deleting an existing Edge",
        "description": "Deletes an existing Edge item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "edgeId",
            "in": "path",
            "description": "Id of an existing Edge that needs to be deleted",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSpotDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSpotDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSpotDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSpotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}": {
      "delete": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/duplicate": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/position": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/positions": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotPositionsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotPositionsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotPositionsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotPositionsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/settings": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotVisualSettingsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotVisualSettingsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotVisualSettingsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotVisualSettingsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/content/text": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotContentTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/shape-text": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotShapeTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotShapeTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotShapeTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotShapeTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/read-aloud/audio": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/read-aloud/voice": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ChooseSpotReadAloudVoiceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChooseSpotReadAloudVoiceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ChooseSpotReadAloudVoiceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ChooseSpotReadAloudVoiceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpotDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/image": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "string",
                "description": "A valid GUID",
                "format": "uuid"
              }
            },
            "application/json": {
              "schema": {
                "type": "string",
                "description": "A valid GUID",
                "format": "uuid"
              }
            },
            "text/json": {
              "schema": {
                "type": "string",
                "description": "A valid GUID",
                "format": "uuid"
              }
            },
            "application/*+json": {
              "schema": {
                "type": "string",
                "description": "A valid GUID",
                "format": "uuid"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/image": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotImageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotImageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotImageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSpotImageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/image/transform": {
      "post": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/trigger": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/{spotId}/navigation": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "spotId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TriggerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TriggerDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/spots/order": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderSpotsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderSpotsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderSpotsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderSpotsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/background": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotBackgroundDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotBackgroundDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotBackgroundDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotBackgroundDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/hotspot/hint": {
      "put": {
        "tags": [
          "HotspotNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotHintDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotHintDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotHintDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHotspotHintDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/HotspotNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/features": {
      "get": {
        "tags": [
          "Infra"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/public/features": {
      "get": {
        "tags": [
          "Infra"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FeatureDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/version": {
      "get": {
        "tags": [
          "Infra"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/integrations": {
      "get": {
        "tags": [
          "Integrations"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDefinitionDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDefinitionDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDefinitionDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/integrations": {
      "get": {
        "tags": [
          "Integrations"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ExternalSystemDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Integrations"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddExternalSystemDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddExternalSystemDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddExternalSystemDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddExternalSystemDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/integrations/stories": {
      "get": {
        "tags": [
          "Integrations"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantIntegrationStoriesDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantIntegrationStoriesDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantIntegrationStoriesDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/integrations/{integrationId}/stories": {
      "get": {
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "integrationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IntegrationStoryUsageDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IntegrationStoryUsageDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IntegrationStoryUsageDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/integrations/{integrationId}": {
      "put": {
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "integrationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditExternalSystemDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditExternalSystemDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditExternalSystemDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditExternalSystemDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "integrationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/api-keys": {
      "get": {
        "tags": [
          "Integrations"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKeyDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKeyDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApiKeyDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Integrations"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiKeyRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiKeyRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiKeyRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateApiKeyRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateApiKeyResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateApiKeyResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateApiKeyResponseDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/api-keys/{id}/revoke": {
      "post": {
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/api-keys/{id}": {
      "delete": {
        "tags": [
          "Integrations"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/intent": {
      "post": {
        "tags": [
          "Intent"
        ],
        "summary": "Gets the next node content for intent node functionality",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "intentType",
            "in": "query",
            "description": "",
            "schema": {
              "$ref": "#/components/schemas/IntentTypeDto"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Text": {
                    "type": "string"
                  },
                  "IntentCombinations": {
                    "type": "string"
                  },
                  "IntentVoiceRequestDto": {
                    "type": "string"
                  },
                  "audio": {
                    "type": "string",
                    "description": "",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Text": {
                  "style": "form"
                },
                "IntentCombinations": {
                  "style": "form"
                },
                "IntentVoiceRequestDto": {
                  "style": "form"
                },
                "audio": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulation/{simulationId}/nodes/intent": {
      "post": {
        "tags": [
          "Intent"
        ],
        "summary": "Gets the next node content for intent node functionality",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "intentType",
            "in": "query",
            "description": "",
            "schema": {
              "$ref": "#/components/schemas/IntentTypeDto"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "Text": {
                    "type": "string"
                  },
                  "IntentCombinations": {
                    "type": "string"
                  },
                  "IntentVoiceRequestDto": {
                    "type": "string"
                  },
                  "audio": {
                    "type": "string",
                    "description": "",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Text": {
                  "style": "form"
                },
                "IntentCombinations": {
                  "style": "form"
                },
                "IntentVoiceRequestDto": {
                  "style": "form"
                },
                "audio": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntentResponseDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/outcome/compare": {
      "post": {
        "tags": [
          "Intent"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CompareTextSimilarityRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompareTextSimilarityRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CompareTextSimilarityRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CompareTextSimilarityRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TextSimilarityDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TextSimilarityDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TextSimilarityDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/languages": {
      "get": {
        "tags": [
          "Languages"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LanguageDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LanguageDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LanguageDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/languages/tenant": {
      "get": {
        "tags": [
          "Languages"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantLanguageDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantLanguageDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantLanguageDto"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Languages"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LanguageDto"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LanguageDto"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LanguageDto"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LanguageDto"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Languages"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/LanguageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LanguageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/LanguageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/LanguageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/languages/tenant/{languageCode}": {
      "delete": {
        "tags": [
          "Languages"
        ],
        "parameters": [
          {
            "name": "languageCode",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/locations": {
      "get": {
        "tags": [
          "Location"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LocationDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LocationDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/LocationDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Location"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "image": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "image": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/locations/{locationId}": {
      "put": {
        "tags": [
          "Location"
        ],
        "parameters": [
          {
            "name": "locationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditLocationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditLocationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditLocationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditLocationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Location"
        ],
        "parameters": [
          {
            "name": "locationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/locations/{locationId}/duplicate": {
      "post": {
        "tags": [
          "Location"
        ],
        "parameters": [
          {
            "name": "locationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/simulations/{id}/recent": {
      "get": {
        "tags": [
          "Media"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AssetTypeDto"
              }
            }
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/menu-points": {
      "post": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Add a menu point to a simulation",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMenuPointDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMenuPointDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMenuPointDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMenuPointDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/menu-points/{menuPointId}": {
      "put": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Update a menu point",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "menuPointId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMenuPointDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMenuPointDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMenuPointDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMenuPointDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MenuPointDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Delete a menu point",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "menuPointId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/menu-points/lock-all": {
      "post": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Lock or unlock all menu points",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/LockAllMenuPointsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LockAllMenuPointsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/LockAllMenuPointsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/LockAllMenuPointsDto"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/menu-points/sort": {
      "post": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Sort menu points by providing IDs with their new indices",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SortMenuPointsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SortMenuPointsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SortMenuPointsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SortMenuPointsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/menu-points/auto-sort": {
      "post": {
        "tags": [
          "MenuPoints"
        ],
        "summary": "Auto-sort menu points using BFS traversal from the start node.\r\nDisconnected graphs are ordered by distance from the start node.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MenuPointDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Creating a new Node Item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Node"
        ],
        "summary": "Retrieving all Nodes by the simulationId",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/BaseNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/NodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/PageNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/CodeNodeDto"
                      }
                    ]
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/BaseNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/NodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/PageNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/CodeNodeDto"
                      }
                    ]
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "$ref": "#/components/schemas/BaseNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/NodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/PageNodeDto"
                      },
                      {
                        "$ref": "#/components/schemas/CodeNodeDto"
                      }
                    ]
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "delete": {
        "tags": [
          "Node"
        ],
        "summary": "Delete nodes",
        "description": "Delete nodes",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "JSON Node Ids",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteNodesDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteNodesDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteNodesDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteNodesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}": {
      "get": {
        "tags": [
          "Node"
        ],
        "summary": "Retrieving a Node using its nodeId",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "The Id of the Node item to be retrieved",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "put": {
        "tags": [
          "Node"
        ],
        "summary": "Updating Node item",
        "description": "Updates an existing item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of an existing Node that needs to be updated",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "delete": {
        "tags": [
          "Node"
        ],
        "summary": "Deleting an existing Node",
        "description": "Deletes an existing Node item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of an existing Node that needs to be deleted",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/theme": {
      "put": {
        "tags": [
          "Node"
        ],
        "summary": "Setting theme override for a Node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetNodeThemeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetNodeThemeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetNodeThemeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetNodeThemeDto"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/positions": {
      "patch": {
        "tags": [
          "Node"
        ],
        "summary": "Updating Nodes positions",
        "description": "Updating Nodes positions",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "JSON Node positions document to be updated in an existing Simulation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodePosition"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodePosition"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodePosition"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodePosition"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/speakers": {
      "patch": {
        "tags": [
          "Node"
        ],
        "summary": "Updating node speakers",
        "description": "Updating node speakers",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "JSON Node speakers document to be updated in an existing Simulation",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodeSpeaker"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodeSpeaker"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodeSpeaker"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EditNodeSpeaker"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/add-voiceover": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Uploads node voiceover to Azure Blob storage",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Simulation id",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Node id",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "Second in audio to start cropping from",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endAt",
            "in": "query",
            "description": "Second in audio to end cropping at",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "Voiceover file to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/audio/voice-mimic": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Generates voice mimic audio from the node's uploaded audio and stores it.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Simulation id",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Node id",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/lip-sync/prioritize": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Queues TTS and lip-sync for nodes a preview is about to play ahead of bulk regeneration.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Simulation id",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Node ids to prioritize",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/PrioritizeNodeLipSyncDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrioritizeNodeLipSyncDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PrioritizeNodeLipSyncDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PrioritizeNodeLipSyncDto"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/duplicate": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Duplicating an existing node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateNodeDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/content": {
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Uploads content to storage",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "Node"
        ],
        "summary": "Download Azure Blob storage audio",
        "parameters": [
          {
            "name": "filePath",
            "in": "query",
            "description": "Path to the Blob attachment. Example: \"8acac807-8f2f-4394-8a17-6a3281f96e84.jpg\"",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "simulationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/media/clips": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaClipDto"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaClipDto"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaClipDto"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaClipDto"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/media/tracks": {
      "put": {
        "tags": [
          "Node"
        ],
        "summary": "Adds media tracks to a node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of simulation node is on",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of node that should use overrides",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Media information including media tracks and media clips",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaTracksDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaTracksDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaTracksDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaTracksDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "If updated",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "If unauthorized access"
          },
          "404": {
            "description": "If the node can't be found"
          },
          "412": {
            "description": "If the item had been updated since sending the request"
          },
          "500": {
            "description": "If something went wrong"
          }
        }
      },
      "post": {
        "tags": [
          "Node"
        ],
        "summary": "Adds media tracks to a node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of simulation node is on",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of node that should use overrides",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "201": {
            "description": "If created"
          },
          "401": {
            "description": "If unauthorized access"
          },
          "404": {
            "description": "If the node can't be found"
          },
          "412": {
            "description": "If the item had been updated since sending the request"
          },
          "500": {
            "description": "If something went wrong"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/overrides": {
      "put": {
        "tags": [
          "Node"
        ],
        "summary": "Specifies whether the camera and ambience volume should be overridden on a dialogue node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of simulation node is on",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of node that should use overrides",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Overrides to apply",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/DialogueNodeOverridesDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DialogueNodeOverridesDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DialogueNodeOverridesDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DialogueNodeOverridesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "204": {
            "description": "If updated"
          },
          "401": {
            "description": "If unauthorized access"
          },
          "404": {
            "description": "If the node can't be found"
          },
          "412": {
            "description": "If the item had been updated since sending the request"
          },
          "500": {
            "description": "If something went wrong"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/characters/{characterId}/overrides": {
      "put": {
        "tags": [
          "Node"
        ],
        "summary": "Specifies whether the character has overrides for a dialogue node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of simulation node is on",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "Id of node characters are on",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "path",
            "description": "Id of character to override for",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Overrides to apply",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditDialogueNodeCharacterOverridesDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditDialogueNodeCharacterOverridesDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditDialogueNodeCharacterOverridesDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditDialogueNodeCharacterOverridesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "204": {
            "description": "If updated"
          },
          "401": {
            "description": "If unauthorized access"
          },
          "404": {
            "description": "If the node can't be found"
          },
          "412": {
            "description": "If the item had been updated since sending the request"
          },
          "500": {
            "description": "If something went wrong"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/audio/source": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioSourceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioSourceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioSourceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioSourceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/audio/toggle-voice-mimic": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeVoiceMimicDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeVoiceMimicDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeVoiceMimicDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeVoiceMimicDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/audio/volume": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioVolumeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioVolumeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioVolumeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditNodeAudioVolumeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/label": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeLabelDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeLabelDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeLabelDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeLabelDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/text": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNodeTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/text/enhance": {
      "post": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EnhanceNodeTextDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnhanceNodeTextDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EnhanceNodeTextDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EnhanceNodeTextDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EnhancedNodeTextDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnhancedNodeTextDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnhancedNodeTextDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/position/move": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Position2dDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/BaseNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/NodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/PageNodeDto"
                    },
                    {
                      "$ref": "#/components/schemas/CodeNodeDto"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/intent/update": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpenResponseNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpenResponseNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpenResponseNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpenResponseNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OpenResponseNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenResponseNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OpenResponseNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/outcome/update": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutcomeNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutcomeNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutcomeNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutcomeNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OutcomeNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutcomeNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutcomeNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/no-match/update": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNoMatchNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNoMatchNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNoMatchNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNoMatchNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NoMatchNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NoMatchNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NoMatchNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/characters/swap": {
      "put": {
        "tags": [
          "Node"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SwapCharactersDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SwapCharactersDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SwapCharactersDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SwapCharactersDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SwapCharactersResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SwapCharactersResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SwapCharactersResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/characters/{characterIdToRemove}": {
      "delete": {
        "tags": [
          "Node"
        ],
        "summary": "Removes a character from an event node.",
        "description": "This endpoint only supports removal of characters from nodes of type 'Event'.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "The Id of the simulation containing the node.",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "The Id of the event node from which to remove the character.",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "characterIdToRemove",
            "in": "path",
            "description": "The Id of the character to remove.",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/RemoveCharacterResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoveCharacterResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoveCharacterResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v2/simulations/{simulationId}/nodes": {
      "post": {
        "tags": [
          "NodeControllerV2"
        ],
        "summary": "Creates a new Node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDtoV2"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDtoV2"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDtoV2"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeDtoV2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v2/simulations/{simulationId}/nodes/between": {
      "post": {
        "tags": [
          "NodeControllerV2"
        ],
        "summary": "Creates a new Node between existing nodes",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeBetweenDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeBetweenDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeBetweenDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNodeBetweenDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeBetweenResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeBetweenResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateNodeBetweenResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/oembed": {
      "get": {
        "tags": [
          "Oembed"
        ],
        "parameters": [
          {
            "name": "url",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "maxwidth",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "maxheight",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/OembedFormat"
            }
          },
          {
            "name": "referrer",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json+oembed": {
                "schema": {
                  "$ref": "#/components/schemas/OembedResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Full page tree replacement. Since WE-1985 block, column and order edits\r\ngo through the granular endpoints below; this remains for the compound\r\nedits no targeted endpoint expresses — inserting a templated section\r\nand restructuring a section's columns to a layout preset.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Add a new page to the node",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddPageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddPageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddPageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddPageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/order": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Reorder the node's pages. The body is the full ordered list of page\r\nids — a permutation, never a subset. The literal \"order\" segment cannot\r\nbe read as a page id: the {pageId} routes only match a guid.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageOrderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageOrderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageOrderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageOrderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Update page properties (name, theme). Theme follows the patch\r\nconvention of `SetNodeTheme`: null leaves it unchanged, an empty\r\nGUID clears it back to the story theme.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PageNode"
        ],
        "summary": "Delete a page",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Add a new section to a page",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddSectionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddSectionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddSectionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddSectionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}": {
      "delete": {
        "tags": [
          "PageNode"
        ],
        "summary": "Delete a section",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Update section properties (padding, columnGap, blockAlignment)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/order": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Reorder a page's sections. The body is the full ordered list of\r\nsection ids — a permutation, never a subset.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionOrderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionOrderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionOrderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSectionOrderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Add a column (client-supplied id, widths redistributed evenly)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddColumnDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddColumnDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddColumnDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddColumnDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/widths": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Resize a section's columns. Must name every column exactly once, with\r\nwidths summing to 100. Declared before the {columnId} routes so the\r\nliteral \"widths\" segment can never be read as a column id.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnWidthsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnWidthsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnWidthsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnWidthsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/{columnId}": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Update column properties (padding, gap)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateColumnDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PageNode"
        ],
        "summary": "Delete a column and its blocks (refuses the last one; widths\r\nredistributed evenly)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/{columnId}/blocks": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Add a block (client-supplied id inside the block, optional insertion\r\nindex)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddBlockDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddBlockDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddBlockDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddBlockDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/{columnId}/blocks/{blockId}": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Update a block's payload — the high-frequency autosave path (WE-1985).\r\nThe route names the block; the body id is ignored in its favour.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "blockId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlockDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlockDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlockDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBlockDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PageNode"
        ],
        "summary": "Delete a block",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "blockId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/{columnId}/blocks/{blockId}/move": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Move a block to another slot, column, section or page. Carries no\r\nblock data — the payload cannot be lost in transit.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "blockId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveBlockDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveBlockDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveBlockDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveBlockDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/background": {
      "put": {
        "tags": [
          "PageNode"
        ],
        "summary": "Update section background (color/gradient)",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SectionBackgroundDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SectionBackgroundDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SectionBackgroundDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SectionBackgroundDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/background/media": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Select background image from media library",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PageNode"
        ],
        "summary": "Remove background image",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/page/pages/{pageId}/sections/{sectionId}/columns/{columnId}/blocks/{blockId}/media/{slotKey}": {
      "post": {
        "tags": [
          "PageNode"
        ],
        "summary": "Select a media block's media from the media library. An optional\r\ntrailing slot key (WE-2786) addresses one slot of a block with more\r\nthan one media reference; absent defaults to the media block's own\r\nslot, so an older client keeps working unchanged.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "pageId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "sectionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "columnId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "blockId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "slotKey",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/stories": {
      "get": {
        "tags": [
          "PartnerStories"
        ],
        "parameters": [
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 25
            }
          },
          {
            "name": "x-continuation-token",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PartnerStoryDtoPaginatedDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PartnerStoryDtoPaginatedDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PartnerStoryDtoPaginatedDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/tracking/events": {
      "post": {
        "tags": [
          "PlayerTracking"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TrackStoryEventRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackStoryEventRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackStoryEventRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TrackStoryEventRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/poster/template/media": {
      "post": {
        "tags": [
          "PosterNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTemplateMediaDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTemplateMediaDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTemplateMediaDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectTemplateMediaDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PosterNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/poster/template/embed": {
      "post": {
        "tags": [
          "PosterNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddEmbeddedTemplateVideoDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddEmbeddedTemplateVideoDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddEmbeddedTemplateVideoDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddEmbeddedTemplateVideoDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/poster/background/media": {
      "post": {
        "tags": [
          "PosterNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectBackgroundMediaDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectBackgroundMediaDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectBackgroundMediaDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectBackgroundMediaDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "PosterNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/pricing/plans": {
      "get": {
        "tags": [
          "Pricing"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PlanOptionsDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlanOptionsDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlanOptionsDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/simulations/{simulationPublicId}": {
      "get": {
        "tags": [
          "Public"
        ],
        "parameters": [
          {
            "name": "simulationPublicId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/simulations/{simulationPublicId}/protection": {
      "get": {
        "tags": [
          "Public"
        ],
        "parameters": [
          {
            "name": "simulationPublicId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationProtectionTypeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationProtectionTypeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationProtectionTypeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/simulations/{simulationPublicId}/otp": {
      "post": {
        "tags": [
          "Public"
        ],
        "parameters": [
          {
            "name": "simulationPublicId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SendSimulationEmailAccessOtpDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendSimulationEmailAccessOtpDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SendSimulationEmailAccessOtpDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SendSimulationEmailAccessOtpDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/public/simulations/{simulationId}/complete": {
      "post": {
        "tags": [
          "Public"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FirstName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LastName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Email",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Actor",
            "in": "query",
            "schema": { }
          },
          {
            "name": "ActivityId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Registration",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SessionId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Endpoint",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "XApiAuthToken",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/simulations/{simulationId}/play": {
      "post": {
        "tags": [
          "Public"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Actor",
            "in": "query",
            "schema": { }
          },
          {
            "name": "ActivityId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Registration",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SessionId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Endpoint",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "XApiAuthToken",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/{tenantId}/scenes/ambience-sounds/{id}": {
      "get": {
        "tags": [
          "PublicScenes"
        ],
        "parameters": [
          {
            "name": "tenantId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/questionnaires/signup": {
      "get": {
        "tags": [
          "Questionnaire"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuestionnaireDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuestionnaireDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuestionnaireDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/questionnaires/signup/answer/submit": {
      "post": {
        "tags": [
          "Questionnaire"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AnswerDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AnswerDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AnswerDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AnswerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/questionnaires/signup/complete": {
      "post": {
        "tags": [
          "Questionnaire"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CompleteSignUpQuestionnaireDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompleteSignUpQuestionnaireDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CompleteSignUpQuestionnaireDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CompleteSignUpQuestionnaireDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/public/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/feedback": {
      "post": {
        "tags": [
          "QuizFeedback"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackResponseDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/public/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/feedback/tts": {
      "post": {
        "tags": [
          "QuizFeedback"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateQuizFeedbackDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackAudioResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackAudioResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizFeedbackAudioResponseDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}": {
      "delete": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/duplicate": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/type": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/QuizQuestionTypeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/QuizQuestionTypeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/QuizQuestionTypeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/QuizQuestionTypeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/order": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDisplayOrderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDisplayOrderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDisplayOrderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionDisplayOrderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/answers": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionAnswerDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionAnswerDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionAnswerDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddQuestionAnswerDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizNodeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizNodeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizNodeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizNodeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/results": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizResultsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizResultsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizResultsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizResultsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/character-presenter": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizCharacterPresenterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizCharacterPresenterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizCharacterPresenterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizCharacterPresenterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/background": {
      "put": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizBackgroundDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizBackgroundDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizBackgroundDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuizBackgroundDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/image": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/answers/{answerId}/image/transform": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "answerId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizAnswerDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/image/transform": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/questions/{questionId}/answers/{answerId}/image": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "answerId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImageMetadataDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "questionId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "answerId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/background/media": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SelectMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/quiz/background/image/transform": {
      "post": {
        "tags": [
          "QuizNode"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuizNodeDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/reviewer/session/activate": {
      "post": {
        "tags": [
          "ReviewerSession"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateReviewerSessionRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateReviewerSessionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateReviewerSessionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ActivateReviewerSessionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ReviewerActivationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReviewerActivationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReviewerActivationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/reviewer/stories/{simulationId}": {
      "get": {
        "tags": [
          "ReviewerStories"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/scenes/{sceneId}": {
      "get": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSceneDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSceneDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSceneDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSceneDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/scenes": {
      "get": {
        "tags": [
          "Scenes"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SceneDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SceneDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SceneDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Scenes"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSceneDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSceneDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSceneDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSceneDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/scenes/{sceneId}/duplicate": {
      "post": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/scenes/ambience-sounds": {
      "get": {
        "tags": [
          "Scenes"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "sound": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "sound": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/scenes/ambience-sounds/{id}": {
      "delete": {
        "tags": [
          "Scenes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/script-assistant/sessions": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSessionRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSessionRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSessionRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSessionRequestDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSessionResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSessionResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSessionResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 5
            }
          },
          {
            "name": "offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "origin",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/ScriptAssistantSessionOrigin"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SessionListResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SessionListResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SessionListResponseDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SessionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SessionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SessionDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/chat": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ChatResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChatResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChatResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/create-story": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateStoryResponseDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/create-slideshow-story": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "summary": "Turns a slideshow's storyboard into a story — one Dialogue node per slide, the slide as its\r\nbackground, the chosen presenter on the start node.",
        "description": "ITS OWN ROUTE, not a branch inside `create-story` above. The two answer different\r\nquestions with different shapes: that one builds synchronously from an outline and returns\r\nthe story, this one starts a build on the bus and returns a STATUS, because a deck can carry\r\na hundred slides at two Cosmos commands each — see `CreateSlideshowStory` for the\r\ntransport reasoning. Folding them together would also mean softening\r\n`SlideshowStoryCreationRefusal`, which is the guard keeping a slideshow out of the\r\noutline path in the first place.\r\n            \r\n200 FOR EVERY OUTCOME THAT IS NOT A REFUSAL, including the two that did not build anything:\r\na story that already exists (the double click, answered with its id) and one already being\r\nbuilt (the second tab). Both are the mechanism working, and both leave the caller with the\r\nsame next move the storyboard's poll would give it.\r\n            \r\n422 carries text meant for the user, which is why there is no failure-reason enum beside it.\r\nEvery refusal on this route — no presenter, a presenter who has left their slot, a deck still\r\nrendering, slides whose images were deleted — is something the person pressing the button can\r\nact on, and the message names the action. See `SlideshowStoryReadiness`, which holds the\r\nsame four clauses the client's own gate holds so the two cannot disagree.\r\n            \r\nGATED ON `DeckToSlideshow` AT THE ENDPOINT as well as in the handler, for the reason the\r\npresenter route below gives: an action filter short-circuits before MediatR is entered, so\r\nwith the flag off this endpoint must not exist rather than 422 from a validator that has\r\nalready run its lookups.",
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSlideshowStoryResponseDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSlideshowStoryResponseDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateSlideshowStoryResponseDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/files": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/FileUploadResultDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/chat/stream": {
      "post": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SendMessageRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/chat/stream/resume": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/guidelines": {
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GuidelinesDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GuidelinesDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GuidelinesDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GuidelinesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidelinesDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidelinesDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidelinesDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/script-language": {
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "summary": "Sets the story's narration language from the page's language dropdown. Checked against the\r\nsupported languages and recorded exactly as the assistant records it.",
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetScriptLanguageRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetScriptLanguageRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetScriptLanguageRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetScriptLanguageRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptLanguageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptLanguageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScriptLanguageDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/outline/scenes/{sceneId}/nodes/{nodeId}": {
      "patch": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineNodeRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineNodeRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineNodeRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineNodeRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineNodeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineNodeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineNodeDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/outline/scenes/{sceneId}": {
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineSceneRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineSceneRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineSceneRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOutlineSceneRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/outline/scenes/{sceneId}/thumbnail": {
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "summary": "Stores the JPEG the stage editor captured for a chapter and returns the scene with its new\r\n`thumbnailPath` (WE-3220).",
        "description": "Fixed `RequestSizeLimit` rather than `ConfigurableRequestSizeLimit`: the configurable\r\nlimits are per-environment settings and the base value of `Small` is 0. A 480px JPEG is\r\ntens of KB; the validator caps the file at 1 MiB and this caps the multipart body at 2 MiB.",
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sceneId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/OutlineSceneDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "413": {
            "description": "Content Too Large",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/presenter": {
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "summary": "Records the one presenter a Slideshow user chose - character, placement and voice.",
        "description": "PUT and not PATCH: the whole choice replaces the previous one, the same way\r\n`UpdateOutlineScene` replaces a scene's editable state. 404 also covers \"this session\r\nis not a slideshow session you may write a presenter to\" only in the sense that the FEATURE\r\nis off - a Context session that exists answers 422, because refusing it explicitly is the\r\npoint (see SetSlideshowPresenter's mode guard).\r\n            \r\n422 also covers the write the STORE refused - the session was deleted, or stopped being a\r\nSlideshow, between the handler's read and the patch. One status for both because the\r\nrepository reports one bool for both, and 404 would be a claim about which.\r\n            \r\nGATED ON `DeckToSlideshow` AT THE ENDPOINT. The controller used to carry a\r\nclass-level `ScriptAssistant` gate as well (removed once that flag was fully rolled\r\nout); `UnleashFeatureGateFilter` requires ALL gates on an endpoint to pass, so stacking\r\na controller gate back on top stays safe. Pinned by `UnleashFeatureGateFilterTests`.\r\n            \r\nIt has to be here and not only in the handler. An action filter short-circuits before the\r\naction body runs, so it precedes MediatR entirely; the handler's check runs INSIDE the\r\npipeline, after `ValidatorBehavior` has already rejected a malformed body with a 422\r\nand run the validator's tenant and character lookups. With the flag off this endpoint must\r\nnot exist, and \"does not exist\" cannot be something a caller discovers only after passing\r\nvalidation. The handler keeps its own check all the same - it is the backstop for any\r\nnon-HTTP caller of the command, and the only one a handler unit test can see.",
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSlideshowPresenterRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSlideshowPresenterRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSlideshowPresenterRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSlideshowPresenterRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SlideshowPresenterDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SlideshowPresenterDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SlideshowPresenterDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/stage-options": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StageOptionsDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StageOptionsDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StageOptionsDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/storyboard": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoryboardDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryboardDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryboardDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/storyboard/{renderJobId}/beats/{pageIndex}": {
      "patch": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "renderJobId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBeatNarrationRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBeatNarrationRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBeatNarrationRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateBeatNarrationRequestDto"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "renderJobId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageIndex",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/sessions/{sessionId}/system-prompt": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "ScriptAssistant"
        ],
        "parameters": [
          {
            "name": "sessionId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSystemPromptDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSystemPromptDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSystemPromptDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSystemPromptDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/script-assistant/system-prompt/default": {
      "get": {
        "tags": [
          "ScriptAssistant"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemPromptDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "summary": "Creating a new Simulation Item",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSimulationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSimulationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSimulationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSimulationDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}": {
      "get": {
        "tags": [
          "Simulation"
        ],
        "summary": "Retrieving a Simulation using its simulationId",
        "description": "Retrieves a Simulation using its simulationId",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "The Id of the Simuation item to be retrieved",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "put": {
        "tags": [
          "Simulation"
        ],
        "summary": "Updating Simulation item",
        "description": "Updates an existing item",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of an existing Simulation that needs to be updated",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSimulationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSimulationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSimulationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSimulationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "delete": {
        "tags": [
          "Simulation"
        ],
        "summary": "Deleting an existing Simulation",
        "description": "Deletes an existing Simulation item list",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "Id of an existing Simulation that needs to be deleted",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/duplicate": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/publish": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPublishSettingsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPublishSettingsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPublishSettingsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPublishSettingsDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/protection": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationProtectionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationProtectionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationProtectionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationProtectionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/play-settings": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPlaySettingsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPlaySettingsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPlaySettingsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationPlaySettingsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/unpublish": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/events": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationEventsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationEventsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationEventsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationEventsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/folders/{folderId}": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "folderId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/folders": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/search": {
      "get": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "searchText",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoriesAndFoldersSearchResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoriesAndFoldersSearchResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoriesAndFoldersSearchResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/title": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameSimulationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameSimulationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameSimulationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameSimulationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/lock-status": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationLockStatusDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationLockStatusDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationLockStatusDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationLockStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SimulationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/theme": {
      "put": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationThemeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationThemeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationThemeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetSimulationThemeDto"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/generate": {
      "post": {
        "tags": [
          "Simulation"
        ],
        "parameters": [
          {
            "name": "type",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/FileType"
            }
          },
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "File": {
                    "type": "string",
                    "format": "binary"
                  },
                  "LanguageCode": {
                    "type": "string"
                  },
                  "SceneId": {
                    "type": "string"
                  },
                  "CharacterId": {
                    "type": "string"
                  },
                  "VoiceName": {
                    "type": "string"
                  },
                  "ActsLike": {
                    "type": "string"
                  },
                  "StoryTitle": {
                    "type": "string"
                  },
                  "IncludeImages": {
                    "type": "boolean"
                  },
                  "SourceFileFunctionalType": {
                    "$ref": "#/components/schemas/SourceFileFunctionalType"
                  },
                  "PageSelection": {
                    "$ref": "#/components/schemas/PageSelection"
                  },
                  "PageRangeLower": {
                    "type": "integer",
                    "format": "int32"
                  },
                  "PageRangeUpper": {
                    "type": "integer",
                    "format": "int32"
                  },
                  "ContentLengthOption": {
                    "$ref": "#/components/schemas/ContentLengthOption"
                  }
                }
              },
              "encoding": {
                "File": {
                  "style": "form"
                },
                "LanguageCode": {
                  "style": "form"
                },
                "SceneId": {
                  "style": "form"
                },
                "CharacterId": {
                  "style": "form"
                },
                "VoiceName": {
                  "style": "form"
                },
                "ActsLike": {
                  "style": "form"
                },
                "StoryTitle": {
                  "style": "form"
                },
                "IncludeImages": {
                  "style": "form"
                },
                "SourceFileFunctionalType": {
                  "style": "form"
                },
                "PageSelection": {
                  "style": "form"
                },
                "PageRangeLower": {
                  "style": "form"
                },
                "PageRangeUpper": {
                  "style": "form"
                },
                "ContentLengthOption": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/audio": {
      "post": {
        "tags": [
          "SimulationAudio"
        ],
        "summary": "Uploads audio to Azure Blob storage",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "attachment": {
                    "type": "string",
                    "description": "File to upload",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "attachment": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "get": {
        "tags": [
          "SimulationAudio"
        ],
        "summary": "Download Azure Blob storage audio",
        "parameters": [
          {
            "name": "filePath",
            "in": "query",
            "description": "Path to the Blob attachment. Example: \"8acac807-8f2f-4394-8a17-6a3281f96e84.jpg\"",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "simulationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/File"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/integrations": {
      "get": {
        "tags": [
          "SimulationIntegrations"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationIntegrationDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationIntegrationDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SimulationIntegrationDto"
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      },
      "post": {
        "tags": [
          "SimulationIntegrations"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationIntegrationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationIntegrationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationIntegrationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SimulationIntegrationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/integrations/{simulationIntegrationId}": {
      "delete": {
        "tags": [
          "SimulationIntegrations"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "simulationIntegrationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/media": {
      "post": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "thumbnail": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "thumbnail": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/media/recent": {
      "get": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AssetTypeDto"
              }
            }
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/media/{mediaReferenceId}/usage": {
      "get": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/media/{mediaReferenceId}": {
      "delete": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/media/{mediaReferenceId}/usage": {
      "get": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceUsageDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/media/{mediaReferenceId}": {
      "delete": {
        "tags": [
          "SimulationMedia"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/skills/toggle": {
      "put": {
        "tags": [
          "Skills"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ToggleStorySkillsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToggleStorySkillsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ToggleStorySkillsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ToggleStorySkillsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "boolean"
                }
              },
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              },
              "text/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/skills": {
      "post": {
        "tags": [
          "Skills"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStorySkillDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStorySkillDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStorySkillDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateStorySkillDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/skills/{skillId}": {
      "put": {
        "tags": [
          "Skills"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "skillId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStorySkillDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStorySkillDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStorySkillDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStorySkillDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Skills"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "skillId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SkillDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/Speech/voices/{locale}": {
      "get": {
        "tags": [
          "Speech"
        ],
        "parameters": [
          {
            "name": "locale",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/VoiceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/VoiceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/VoiceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/Speech/speechtotext": {
      "post": {
        "tags": [
          "Speech"
        ],
        "parameters": [
          {
            "name": "language",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "detailedFormat",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "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": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Speech"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Speech"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Speech"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/recent": {
      "get": {
        "tags": [
          "Stories"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardSimulationDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardSimulationDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DashboardSimulationDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/language/edit": {
      "put": {
        "tags": [
          "Stories"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditStoryLanguageDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditStoryLanguageDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditStoryLanguageDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditStoryLanguageDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/EditStoryLanguageResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EditStoryLanguageResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/EditStoryLanguageResultDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/stories/{simulationId}/description": {
      "put": {
        "tags": [
          "Stories"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryDescriptionDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryDescriptionDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryDescriptionDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryDescriptionDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/voiceover": {
      "put": {
        "tags": [
          "Stories"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryVoiceoverDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryVoiceoverDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryVoiceoverDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateStoryVoiceoverDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/VoiceOverDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VoiceOverDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/VoiceOverDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/stories/folders": {
      "get": {
        "tags": [
          "StoriesFolders"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "StoriesFolders"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddFolderDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/stories/folders/move": {
      "post": {
        "tags": [
          "StoriesFolders"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/stories/folders/{id}": {
      "get": {
        "tags": [
          "StoriesFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/FolderDto"
                }
              }
            }
          }
        },
        "deprecated": true
      },
      "put": {
        "tags": [
          "StoriesFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "StoriesFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/stories/folders/{id}/lock-status": {
      "put": {
        "tags": [
          "StoriesFolders"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SetFolderLockStatusDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetFolderLockStatusDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SetFolderLockStatusDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SetFolderLockStatusDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicFolderDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/export/scorm": {
      "get": {
        "tags": [
          "StoryExports"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/stories/{simulationId}/export/scorm/info": {
      "get": {
        "tags": [
          "StoryExports"
        ],
        "summary": "Returns the published story data needed to build a SCORM package. Read-only, so a locked story can still be exported.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoryScormExportInfoDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryScormExportInfoDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryScormExportInfoDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/export": {
      "post": {
        "tags": [
          "StoryExports"
        ],
        "summary": "Starts an async export of a story as a .wa file for cross-tenant import.",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/export/{operationId}/status": {
      "get": {
        "tags": [
          "StoryExports"
        ],
        "summary": "Returns the status of an async export operation.",
        "parameters": [
          {
            "name": "operationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/export/{operationId}/download": {
      "get": {
        "tags": [
          "StoryExports"
        ],
        "summary": "Downloads the .wa file for a completed export.",
        "parameters": [
          {
            "name": "operationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/import/analyze": {
      "post": {
        "tags": [
          "StoryImports"
        ],
        "summary": "Analyzes a .wa file and returns what is needed to import the story into the current tenant.",
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "waFile": {
                    "type": "string",
                    "description": "The .wa file produced by the export endpoint.",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "waFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportAnalysisDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportAnalysisDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportAnalysisDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/import/voices": {
      "post": {
        "tags": [
          "StoryImports"
        ],
        "summary": "Returns voice suggestions for the source characters in a target language. Advisory only -\r\nthe UI may override any suggestion when finally calling the import endpoint.\r\nSuggestions never duplicate voices across distinct source characters unless the source\r\ncharacters already shared the same voice in the original story.",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/StoryImportVoicesRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StoryImportVoicesRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/StoryImportVoicesRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/StoryImportVoicesRequestDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportVoicesDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportVoicesDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryImportVoicesDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/import": {
      "post": {
        "tags": [
          "StoryImports"
        ],
        "summary": "Imports a story into the current tenant using a previously analyzed import token.\r\nReturns an operation ID that can be used to track progress.",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/ImportStoryRequestDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImportStoryRequestDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ImportStoryRequestDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ImportStoryRequestDto"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/import/{operationId}/status": {
      "get": {
        "tags": [
          "StoryImports"
        ],
        "summary": "Returns the status of an async import operation.",
        "parameters": [
          {
            "name": "operationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ImportExportProgressDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/reviewers/shares": {
      "post": {
        "tags": [
          "StoryReviewerShares"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateReviewerShareRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateReviewerShareRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateReviewerShareRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateReviewerShareRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StoryReviewGrantCreatedDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryReviewGrantCreatedDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoryReviewGrantCreatedDto"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "StoryReviewerShares"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoryReviewShareDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoryReviewShareDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StoryReviewShareDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/stories/{simulationId}/reviewers/shares/{shareId}": {
      "delete": {
        "tags": [
          "StoryReviewerShares"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "shareId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/reviewers/shares/revoke-all": {
      "post": {
        "tags": [
          "StoryReviewerShares"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/stories/{simulationId}/reviewers/shares/link-token": {
      "get": {
        "tags": [
          "StoryReviewerShares"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LinkTokenDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LinkTokenDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LinkTokenDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription": {
      "post": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDtoV2"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDtoV2"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDtoV2"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSubscriptionDtoV2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Subscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SubscriptionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription/addons": {
      "put": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionAddonsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionAddonsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionAddonsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionAddonsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/subscription/buy-now": {
      "post": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/BuyNowDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BuyNowDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/BuyNowDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/BuyNowDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/subscription/plan": {
      "put": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionPlanDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionPlanDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionPlanDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditSubscriptionPlanDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/subscription/invoices": {
      "get": {
        "tags": [
          "Subscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDtoV2"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDtoV2"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/InvoiceDtoV2"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription/upcoming-invoice": {
      "get": {
        "tags": [
          "Subscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpcomingInvoiceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpcomingInvoiceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpcomingInvoiceDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription/customer/email": {
      "put": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditCustomerEmailDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditCustomerEmailDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditCustomerEmailDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditCustomerEmailDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/subscription/payment-info": {
      "get": {
        "tags": [
          "Subscription"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentInfoDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentInfoDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentInfoDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription/addons/calculate-proration": {
      "post": {
        "tags": [
          "Subscription"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CalculateExtrasProration"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CalculateExtrasProration"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CalculateExtrasProration"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CalculateExtrasProration"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CalculateExtrasProrationResultDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalculateExtrasProrationResultDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CalculateExtrasProrationResultDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscription/conversion-preview": {
      "get": {
        "tags": [
          "Subscription"
        ],
        "parameters": [
          {
            "name": "planType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/PlanType"
            }
          },
          {
            "name": "billingPeriod",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/BillingPeriodV2"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/Currency"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ConversionPreviewDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversionPreviewDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConversionPreviewDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants": {
      "get": {
        "tags": [
          "Tenant"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TenantDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantDto"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Tenant"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantOrganizationDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantOrganizationDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantOrganizationDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantOrganizationDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/billing": {
      "get": {
        "tags": [
          "Tenant"
        ],
        "summary": "Retrieves the billing information for the tenant.",
        "responses": {
          "422": {
            "description": "If there is a problem fetching billing details.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorResponse"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorResponse"
                }
              }
            }
          },
          "200": {
            "description": "Returns the billing details successfully."
          }
        }
      },
      "put": {
        "tags": [
          "Tenant"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerBillingDetailsDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerBillingDetailsDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerBillingDetailsDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerBillingDetailsDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/account-name": {
      "put": {
        "tags": [
          "Tenant"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantAccountNameDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantAccountNameDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantAccountNameDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditTenantAccountNameDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/account-image": {
      "put": {
        "tags": [
          "Tenant"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "picture": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "picture": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Tenant"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/payment-method": {
      "put": {
        "tags": [
          "Tenant"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditDefaultPaymentMethodDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditDefaultPaymentMethodDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditDefaultPaymentMethodDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditDefaultPaymentMethodDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/characters": {
      "get": {
        "tags": [
          "TenantCharacter"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/characters/{id}/stories": {
      "get": {
        "tags": [
          "TenantCharacter"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterStoryUsageDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterStoryUsageDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantCharacterStoryUsageDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/characters/{id}/name": {
      "put": {
        "tags": [
          "TenantCharacter"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameTenantCharacterDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameTenantCharacterDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameTenantCharacterDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameTenantCharacterDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CharacterDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/colors": {
      "get": {
        "tags": [
          "TenantColors"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantColorDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantColorDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantColorDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "TenantColors"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantColorDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantColorDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantColorDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantColorDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/colors/{colorId}": {
      "put": {
        "tags": [
          "TenantColors"
        ],
        "parameters": [
          {
            "name": "colorId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantColorDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantColorDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantColorDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantColorDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "TenantColors"
        ],
        "parameters": [
          {
            "name": "colorId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/colors/{colorId}/lock": {
      "post": {
        "tags": [
          "TenantColors"
        ],
        "parameters": [
          {
            "name": "colorId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/colors/{colorId}/unlock": {
      "post": {
        "tags": [
          "TenantColors"
        ],
        "parameters": [
          {
            "name": "colorId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenant/features": {
      "get": {
        "tags": [
          "TenantFeatures"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "boolean"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "boolean"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "boolean"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/fonts": {
      "get": {
        "tags": [
          "TenantFonts"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantFontDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantFontDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantFontDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "TenantFonts"
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "File",
                  "Id",
                  "Name"
                ],
                "type": "object",
                "properties": {
                  "Id": {
                    "type": "string",
                    "description": "A valid GUID",
                    "format": "uuid"
                  },
                  "Name": {
                    "maxLength": 100,
                    "minLength": 0,
                    "type": "string"
                  },
                  "File": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "Id": {
                  "style": "form"
                },
                "Name": {
                  "style": "form"
                },
                "File": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/fonts/google": {
      "post": {
        "tags": [
          "TenantFonts"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGoogleFontReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGoogleFontReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGoogleFontReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateGoogleFontReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/fonts/{fontId}": {
      "put": {
        "tags": [
          "TenantFonts"
        ],
        "parameters": [
          {
            "name": "fontId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantFontDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantFontDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantFontDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTenantFontDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "TenantFonts"
        ],
        "parameters": [
          {
            "name": "fontId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/fonts/{fontId}/lock": {
      "post": {
        "tags": [
          "TenantFonts"
        ],
        "parameters": [
          {
            "name": "fontId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/fonts/{fontId}/unlock": {
      "post": {
        "tags": [
          "TenantFonts"
        ],
        "parameters": [
          {
            "name": "fontId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/media/upload": {
      "post": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  },
                  "thumbnail": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                },
                "thumbnail": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media": {
      "get": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 30
            }
          },
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "assetTypes",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AssetTypeDto"
              }
            }
          },
          {
            "name": "sortOrder",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "sortBy",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MediaReferenceSortBy"
            }
          },
          {
            "name": "storyId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x-continuation-token",
            "in": "header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDtoPaginatedDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDtoPaginatedDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDtoPaginatedDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/recent": {
      "get": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "type",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/AssetTypeDto"
            }
          },
          {
            "name": "order",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/SortOrder"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/media/folders": {
      "get": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDetailDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDetailDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "TenantMedia"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMediaFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMediaFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMediaFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddMediaFolderDto"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/folders/{folderId}": {
      "put": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMediaFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaFolderDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/folder": {
      "patch": {
        "tags": [
          "TenantMedia"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaReferenceToFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaReferenceToFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaReferenceToFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaReferenceToFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/MediaReferenceDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/folders/{folderId}/move": {
      "post": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "folderId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaFolderDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaFolderDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaFolderDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MoveMediaFolderDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/{mediaReferenceId}/usage": {
      "get": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TenantMediaReferenceUsageDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantMediaReferenceUsageDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantMediaReferenceUsageDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/{mediaReferenceId}": {
      "delete": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "force",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/{mediaReferenceId}/name": {
      "put": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameMediaReferenceDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameMediaReferenceDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/RenameMediaReferenceDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/RenameMediaReferenceDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/media/{mediaReferenceId}/replace": {
      "post": {
        "tags": [
          "TenantMedia"
        ],
        "parameters": [
          {
            "name": "mediaReferenceId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/slots/characters": {
      "post": {
        "tags": [
          "TenantSlot"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/AddCharacterToTenantSlotDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCharacterToTenantSlotDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCharacterToTenantSlotDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddCharacterToTenantSlotDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/slots/characters/{tenantCharacterId}": {
      "delete": {
        "tags": [
          "TenantSlot"
        ],
        "parameters": [
          {
            "name": "tenantCharacterId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantCharacterDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/texttospeech": {
      "post": {
        "tags": [
          "TextToSpeech"
        ],
        "summary": "Temporary TTS public endpoint to allow Stories migrations",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tts": {
      "post": {
        "tags": [
          "TextToSpeech"
        ],
        "summary": "Final version of TTS endpoint",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/ssmltospeech": {
      "post": {
        "tags": [
          "TextToSpeech"
        ],
        "summary": "Temporary SSML TTS public endpoint to allow Stories migrations",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tts/ssml": {
      "post": {
        "tags": [
          "TextToSpeech"
        ],
        "summary": "Final endpoint version of SSML TTS generation",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GenerateTextToSpeechSsmlDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/speech/texttospeech": {
      "get": {
        "tags": [
          "TextToSpeech"
        ],
        "parameters": [
          {
            "name": "text",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "locale",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "gender",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "voiceName",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "audioOutputFormat",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        },
        "deprecated": true
      }
    },
    "/api/speech/ssmltospeech": {
      "get": {
        "tags": [
          "TextToSpeech"
        ],
        "parameters": [
          {
            "name": "ssml",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "audioOutputFormat",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        },
        "deprecated": true
      }
    },
    "/api/tenants/themes": {
      "get": {
        "tags": [
          "Themes"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ThemeDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ThemeDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ThemeDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Themes"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateThemeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateThemeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateThemeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateThemeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}": {
      "get": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ThemeDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ThemeDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ThemeDto"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateThemeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateThemeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateThemeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateThemeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "delete": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}/css": {
      "get": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}/lock": {
      "post": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}/unlock": {
      "post": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}/duplicate": {
      "post": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateThemeDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateThemeDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateThemeDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DuplicateThemeDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/themes/{themeId}/set-default": {
      "post": {
        "tags": [
          "Themes"
        ],
        "parameters": [
          {
            "name": "themeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines": {
      "post": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/timeline": {
      "get": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        },
        "deprecated": true
      }
    },
    "/api/simulations/{simulationId}/nodes/{nodeId}/timelines": {
      "get": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "nodeId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimelineDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines/{timelineId}": {
      "put": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTimelineDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              },
              "application/json": {
                "schema": {
                  "type": "string"
                }
              },
              "text/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Timeline"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines/{timelineId}/gestures": {
      "put": {
        "tags": [
          "Timeline"
        ],
        "summary": "Replaces all gestures in a timeline",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateGestureDto"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateGestureDto"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateGestureDto"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateGestureDto"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines/{timelineId}/gestures/{gestureId}": {
      "put": {
        "tags": [
          "Timeline"
        ],
        "summary": "Replaces a single gesture in a timeline",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "gestureId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateGestureDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateGestureDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateGestureDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateGestureDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines/{timelineId}/idles": {
      "put": {
        "tags": [
          "Timeline"
        ],
        "summary": "Replaces all idles in a timeline",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateIdleDto"
                }
              }
            },
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateIdleDto"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateIdleDto"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/UpdateIdleDto"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/simulations/{simulationId}/timelines/{timelineId}/idles/{idleId}": {
      "put": {
        "tags": [
          "Timeline"
        ],
        "summary": "Replaces a single idle in a timeline",
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "timelineId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          {
            "name": "idleId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIdleDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIdleDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIdleDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateIdleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimelineDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/translations/stories/{simulationId}/translate": {
      "post": {
        "tags": [
          "Translation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateStoryDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateStoryDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateStoryDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TranslateStoryDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Simulation"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/api/translations/stories/{simulationId}/cancel": {
      "post": {
        "tags": [
          "Translation"
        ],
        "parameters": [
          {
            "name": "simulationId",
            "in": "path",
            "description": "A valid GUID",
            "required": true,
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/unity/versions": {
      "get": {
        "tags": [
          "Unity"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UnityMajorVersionDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UnityMajorVersionDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UnityMajorVersionDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/unity/versions/{platform}": {
      "get": {
        "tags": [
          "Unity"
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Platform"
            }
          },
          {
            "name": "variant",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/BuildVariant"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UnityMajorVersionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityMajorVersionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityMajorVersionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/unity/versions/{platform}/addressables/{majorVersion}": {
      "get": {
        "tags": [
          "Unity"
        ],
        "parameters": [
          {
            "name": "platform",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/Platform"
            }
          },
          {
            "name": "majorVersion",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UnityVersionDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityVersionDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityVersionDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/unity/configuration": {
      "get": {
        "tags": [
          "Unity"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UnityApiConfigurationDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityApiConfigurationDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnityApiConfigurationDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/{userId}": {
      "get": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users": {
      "get": {
        "tags": [
          "User"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserDto"
                  }
                }
              },
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserDto"
                  }
                }
              },
              "text/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/users/invite": {
      "post": {
        "tags": [
          "User"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/InviteUserDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteUserDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteUserDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InviteUserDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Unit"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Unit"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Unit"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/{userId}/invite": {
      "post": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/role": {
      "post": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserRoleDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserRoleDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserRoleDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserRoleDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/profile": {
      "put": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserProfileDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserProfileDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserProfileDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EditUserProfileDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/last-activity": {
      "put": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/profile-picture": {
      "put": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "picture": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "picture": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/verification-email": {
      "post": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/verification-email-status": {
      "get": {
        "tags": [
          "User"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{userId}/actions/{actionType}/complete": {
      "post": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "actionType",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/workspaces": {
      "get": {
        "tags": [
          "User"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspacesDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspacesDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkspacesDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/workspaces/{workspaceId}": {
      "post": {
        "tags": [
          "User"
        ],
        "parameters": [
          {
            "name": "workspaceId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/workspaces/sort": {
      "put": {
        "tags": [
          "User"
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/SortWorkspacesDto"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SortWorkspacesDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SortWorkspacesDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SortWorkspacesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/video/upload": {
      "post": {
        "tags": [
          "Video"
        ],
        "summary": "Upload video file to Storage and as new video asset to Media repository",
        "parameters": [
          {
            "name": "simulationId",
            "in": "query",
            "description": "A valid GUID",
            "schema": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "description": "",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AIBillingMethod": {
        "enum": [
          "card",
          "invoice"
        ],
        "type": "string"
      },
      "AIBillingMethodDto": {
        "required": [
          "method"
        ],
        "type": "object",
        "properties": {
          "method": {
            "$ref": "#/components/schemas/AIBillingMethod"
          },
          "cardLast4": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AIBillingStatusDto": {
        "required": [
          "creatorTopUpEnabled",
          "creditsUsedThisPeriod",
          "currency",
          "hasPaidPackage",
          "meter",
          "monthlyAllowance",
          "promotionalBalance",
          "status",
          "subscriptionBalance",
          "topUpBalance",
          "totalAvailable"
        ],
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "meter": {
            "type": "string"
          },
          "monthlyAllowance": {
            "type": "integer",
            "format": "int32"
          },
          "subscriptionBalance": {
            "type": "integer",
            "format": "int32"
          },
          "topUpBalance": {
            "type": "integer",
            "format": "int32"
          },
          "promotionalBalance": {
            "type": "integer",
            "format": "int32"
          },
          "totalAvailable": {
            "type": "integer",
            "format": "int32"
          },
          "creditsUsedThisPeriod": {
            "type": "integer",
            "format": "int32"
          },
          "currency": {
            "type": "string"
          },
          "cycleStartedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "creditCycleEndsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "trialExpiresAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "breakdown": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AICreditsBreakdownRow"
            },
            "nullable": true
          },
          "billing": {
            "$ref": "#/components/schemas/AIBillingMethodDto"
          },
          "creatorTopUpEnabled": {
            "type": "boolean"
          },
          "hasPaidPackage": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "AIChatMessageDto": {
        "required": [
          "message"
        ],
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AICompletionTextDto": {
        "required": [
          "assistanceType",
          "languageCode",
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "assistanceType": {
            "$ref": "#/components/schemas/AiAssistanceType"
          },
          "languageCode": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AICreditsBreakdownKind": {
        "enum": [
          "subscription",
          "topup",
          "promotional"
        ],
        "type": "string"
      },
      "AICreditsBreakdownRow": {
        "required": [
          "granted",
          "kind",
          "remaining"
        ],
        "type": "object",
        "properties": {
          "kind": {
            "$ref": "#/components/schemas/AICreditsBreakdownKind"
          },
          "granted": {
            "type": "integer",
            "format": "int32"
          },
          "remaining": {
            "type": "integer",
            "format": "int32"
          },
          "resetsAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "grantId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AICreditsUsageByUserDto": {
        "required": [
          "creditsConsumed",
          "email",
          "name",
          "userId"
        ],
        "type": "object",
        "properties": {
          "userId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "profilePicture": {
            "type": "string",
            "nullable": true
          },
          "creditsConsumed": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "AIOperationCostDto": {
        "required": [
          "credits",
          "description",
          "operationType"
        ],
        "type": "object",
        "properties": {
          "operationType": {
            "type": "string"
          },
          "credits": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AIPackageDto": {
        "required": [
          "amountCents",
          "credits",
          "currency",
          "interval",
          "priceId"
        ],
        "type": "object",
        "properties": {
          "priceId": {
            "type": "string"
          },
          "credits": {
            "type": "integer",
            "format": "int32"
          },
          "amountCents": {
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "type": "string"
          },
          "interval": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AISetIdleAndExpressionDto": {
        "required": [
          "animationContext",
          "characterId",
          "includeGestures",
          "isFirstNode",
          "nodeId",
          "nodeText"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "nodeText": {
            "type": "string"
          },
          "characterId": {
            "type": "string"
          },
          "includeGestures": {
            "type": "boolean"
          },
          "isFirstNode": {
            "type": "boolean"
          },
          "animationContext": {
            "$ref": "#/components/schemas/AnimationContext"
          }
        },
        "additionalProperties": false
      },
      "AITopUpGrantDto": {
        "required": [
          "amountPaidCents",
          "currency",
          "expiresAt",
          "externalSessionId",
          "grantedAt",
          "meter",
          "unitsGranted"
        ],
        "type": "object",
        "properties": {
          "externalSessionId": {
            "type": "string"
          },
          "externalPaymentIntentId": {
            "type": "string",
            "nullable": true
          },
          "unitsGranted": {
            "type": "integer",
            "format": "int32"
          },
          "meter": {
            "type": "string"
          },
          "amountPaidCents": {
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "type": "string"
          },
          "grantedAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "refundedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AITopUpPackDto": {
        "required": [
          "amountCents",
          "credits",
          "currency",
          "imagesEquivalent",
          "size",
          "videoSecondsEquivalent"
        ],
        "type": "object",
        "properties": {
          "size": {
            "type": "string"
          },
          "credits": {
            "type": "integer",
            "format": "int32"
          },
          "amountCents": {
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "type": "string"
          },
          "videoSecondsEquivalent": {
            "type": "integer",
            "format": "int32"
          },
          "imagesEquivalent": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "AITopUpPurchaseResultDto": {
        "required": [
          "amountCents",
          "credits",
          "currency",
          "paymentStatus"
        ],
        "type": "object",
        "properties": {
          "credits": {
            "type": "integer",
            "format": "int32"
          },
          "amountCents": {
            "type": "integer",
            "format": "int64"
          },
          "currency": {
            "type": "string"
          },
          "paymentStatus": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AITopUpSize": {
        "enum": [
          "Small",
          "Medium",
          "Large"
        ],
        "type": "string"
      },
      "ActionDto": {
        "required": [
          "completed",
          "type"
        ],
        "type": "object",
        "properties": {
          "completed": {
            "type": "boolean"
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/ActionTypeDto"
          }
        },
        "additionalProperties": false
      },
      "ActionTypeDto": {
        "enum": [
          "StoryWizardOpened",
          "JoinedCommunity",
          "FinishedOnboardingIntro",
          "NodeMapNudgeSeen"
        ],
        "type": "string"
      },
      "ActivateReviewerSessionRequest": {
        "required": [
          "inviteToken"
        ],
        "type": "object",
        "properties": {
          "inviteToken": {
            "type": "string"
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ActivityInfoDto": {
        "required": [
          "emailVerified",
          "lastActivityDate"
        ],
        "type": "object",
        "properties": {
          "invitationDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lastActivityDate": {
            "type": "string",
            "format": "date-time"
          },
          "emailVerified": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "AddAiStudioFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "parentFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddBlockDto": {
        "required": [
          "block"
        ],
        "type": "object",
        "properties": {
          "block": {
            "$ref": "#/components/schemas/PageBlockDto"
          },
          "index": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddCastCharacterDto": {
        "required": [
          "actsLike",
          "name",
          "selectedVoiceName"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "selectedVoiceName": {
            "type": "string"
          },
          "actsLike": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AddCharacterToCastResultDto": {
        "required": [
          "characters",
          "newTimelines"
        ],
        "type": "object",
        "properties": {
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationCharacterDto"
            }
          },
          "newTimelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimelineDto"
            }
          }
        },
        "additionalProperties": false
      },
      "AddCharacterToTenantSlotDto": {
        "required": [
          "tenantCharacterId"
        ],
        "type": "object",
        "properties": {
          "tenantCharacterId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "AddColumnDto": {
        "required": [
          "columnId"
        ],
        "type": "object",
        "properties": {
          "columnId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AddEmbeddedTemplateVideoDto": {
        "required": [
          "embeddedVideoUrl"
        ],
        "type": "object",
        "properties": {
          "embeddedVideoUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AddExternalSystemDto": {
        "required": [
          "enabled",
          "system"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "system": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "apiUrl": {
            "type": "string",
            "nullable": true
          },
          "apiKey": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          },
          "name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "parentFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddMediaFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "parentFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddMenuPointDto": {
        "required": [
          "label",
          "nodeId"
        ],
        "type": "object",
        "properties": {
          "menuPointId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AddMessageDto": {
        "required": [
          "content",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          }
        },
        "additionalProperties": false
      },
      "AddPageDto": {
        "required": [
          "pageId"
        ],
        "type": "object",
        "properties": {
          "pageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "afterPageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddQuestionAnswerDto": {
        "required": [
          "answerId"
        ],
        "type": "object",
        "properties": {
          "answerId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "pairAnswerId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddQuestionDto": {
        "required": [
          "questionId",
          "type"
        ],
        "type": "object",
        "properties": {
          "questionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/QuizQuestionTypeDto"
          }
        },
        "additionalProperties": false
      },
      "AddSectionDto": {
        "required": [
          "sectionId"
        ],
        "type": "object",
        "properties": {
          "sectionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "afterSectionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddonOverageItemDto": {
        "required": [
          "currency",
          "extraCount",
          "extraUnitPriceAmount",
          "freeLimit",
          "type",
          "used"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PlanAddonType"
          },
          "used": {
            "type": "integer",
            "format": "int32"
          },
          "freeLimit": {
            "type": "integer",
            "format": "int32"
          },
          "extraCount": {
            "type": "integer",
            "format": "int32"
          },
          "extraUnitPriceAmount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          }
        },
        "additionalProperties": false
      },
      "AddressDto": {
        "required": [
          "addressLine",
          "city",
          "country",
          "postalCode",
          "state"
        ],
        "type": "object",
        "properties": {
          "country": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "postalCode": {
            "type": "string"
          },
          "addressLine": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AiAssistanceType": {
        "enum": [
          "Improve",
          "Shorter",
          "Longer",
          "Spelling",
          "ProfessionalTone",
          "CasualTone",
          "StraightforwardTone",
          "ConfidentTone",
          "FriendlyTone"
        ],
        "type": "string"
      },
      "AiStudioFolderDto": {
        "required": [
          "breadcrumbs",
          "name",
          "subfolders"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "subfolders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BasicFolderDto"
            }
          },
          "breadcrumbs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BreadcrumbDto"
            }
          }
        },
        "additionalProperties": false
      },
      "AiStudioImageGenerationDto": {
        "required": [
          "purpose",
          "style",
          "transparentBackground",
          "turns"
        ],
        "type": "object",
        "properties": {
          "purpose": {
            "$ref": "#/components/schemas/AiStudioImagePurpose"
          },
          "style": {
            "$ref": "#/components/schemas/AiStudioImageStyle"
          },
          "transparentBackground": {
            "type": "boolean"
          },
          "turns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AiStudioImageTurnDto"
            }
          }
        },
        "additionalProperties": false
      },
      "AiStudioImagePurpose": {
        "enum": [
          "Image",
          "SceneBackground"
        ],
        "type": "string"
      },
      "AiStudioImageStyle": {
        "enum": [
          "WeAre",
          "None"
        ],
        "type": "string"
      },
      "AiStudioImageTurnDto": {
        "required": [
          "createdAt",
          "id",
          "prompt",
          "referenceImageBlobUrls",
          "resolution",
          "status",
          "style",
          "transparentBackground"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "prompt": {
            "type": "string"
          },
          "referenceImageBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "referenceImageBlobUrls": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "referenceTurnId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "style": {
            "$ref": "#/components/schemas/AiStudioImageStyle"
          },
          "transparentBackground": {
            "type": "boolean"
          },
          "resolution": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/AiStudioImageTurnStatus"
          },
          "outputImageBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "errorCode": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AiStudioImageTurnStatus": {
        "enum": [
          "Generating",
          "Completed",
          "Failed"
        ],
        "type": "string"
      },
      "AiStudioScriptOriginalDto": {
        "required": [
          "text",
          "voiceShortName"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "locale": {
            "type": "string",
            "nullable": true
          },
          "voiceShortName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionCharacterDto": {
        "required": [
          "characterId",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "characterId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          },
          "lookAt": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionDto": {
        "required": [
          "createdAt",
          "createdById",
          "id",
          "input",
          "output",
          "status",
          "tenantId",
          "type",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "createdById": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/AiStudioSessionType"
          },
          "status": {
            "$ref": "#/components/schemas/AiStudioSessionStatus"
          },
          "input": {
            "$ref": "#/components/schemas/AiStudioSessionInputDto"
          },
          "output": {
            "$ref": "#/components/schemas/AiStudioSessionOutputDto"
          },
          "errorMessage": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionInputDto": {
        "required": [
          "audioSource",
          "characters",
          "settings"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "nullable": true
          },
          "imageBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "audioBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "audioDurationSeconds": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "audioSource": {
            "$ref": "#/components/schemas/AudioSource"
          },
          "backgroundBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "prompt": {
            "type": "string",
            "nullable": true
          },
          "settings": {
            "$ref": "#/components/schemas/AiStudioSessionSettings"
          },
          "voiceShortName": {
            "type": "string",
            "nullable": true
          },
          "locale": {
            "type": "string",
            "nullable": true
          },
          "sourceTab": {
            "$ref": "#/components/schemas/AiStudioSourceTab"
          },
          "sceneId": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AiStudioSessionCharacterDto"
            }
          },
          "image": {
            "$ref": "#/components/schemas/AiStudioImageGenerationDto"
          },
          "originalScript": {
            "$ref": "#/components/schemas/AiStudioScriptOriginalDto"
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionOutputDto": {
        "type": "object",
        "properties": {
          "videoBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "imageBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "videoStreamUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionSettings": {
        "required": [
          "resolution"
        ],
        "type": "object",
        "properties": {
          "resolution": {
            "type": "string"
          },
          "provider": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AiStudioSessionStatus": {
        "enum": [
          "Draft",
          "Generating",
          "Completed",
          "Failed",
          "Cancelled",
          "Reopened"
        ],
        "type": "string"
      },
      "AiStudioSessionType": {
        "enum": [
          "PresenterVideo",
          "Image"
        ],
        "type": "string"
      },
      "AiStudioSourceTab": {
        "enum": [
          "Image",
          "Scene"
        ],
        "type": "string"
      },
      "AnimationContext": {
        "enum": [
          "None",
          "Conversation",
          "Monologue"
        ],
        "type": "string"
      },
      "AnswerDto": {
        "required": [
          "questionId"
        ],
        "type": "object",
        "properties": {
          "questionId": {
            "type": "integer",
            "format": "int32"
          },
          "optionIds": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "text": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ApiErrorResponse": {
        "required": [
          "errors"
        ],
        "type": "object",
        "properties": {
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ErrorCode"
            }
          },
          "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": { }
      },
      "ApiKeyDto": {
        "required": [
          "createdAt",
          "id",
          "keyPrefix",
          "name",
          "scopes",
          "status"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "keyPrefix": {
            "type": "string"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "revokedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lastUsedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "AssetTypeDto": {
        "enum": [
          "Images",
          "Videos",
          "Audio",
          "Documents"
        ],
        "type": "string"
      },
      "AudioLipSyncDataDto": {
        "required": [
          "durationInSeconds",
          "fileName"
        ],
        "type": "object",
        "properties": {
          "fileName": {
            "type": "string"
          },
          "durationInSeconds": {
            "type": "number",
            "format": "double"
          },
          "timedPhonemes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimedPhonemeDto"
            },
            "nullable": true
          },
          "timedPhonemeTuples": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DoubleStringValueTuple"
            },
            "nullable": true
          },
          "artifactUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AudioSource": {
        "enum": [
          "None",
          "TextToSpeech",
          "UserProvided"
        ],
        "type": "string"
      },
      "AudioTagCatalogDto": {
        "required": [
          "groups"
        ],
        "type": "object",
        "properties": {
          "groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AudioTagGroupDto"
            }
          }
        },
        "additionalProperties": false
      },
      "AudioTagGroupDto": {
        "required": [
          "name",
          "tags"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "AudioTypeDto": {
        "enum": [
          "None",
          "Recording",
          "TextToSpeech",
          "Upload"
        ],
        "type": "string"
      },
      "BackgroundDto": {
        "required": [
          "margin",
          "mediaReference",
          "originalImageUrl"
        ],
        "type": "object",
        "properties": {
          "originalImageUrl": {
            "type": "string"
          },
          "thumbnailImageUrl": {
            "type": "string",
            "nullable": true
          },
          "desktopImageUrl": {
            "type": "string",
            "nullable": true
          },
          "mobileImageUrl": {
            "type": "string",
            "nullable": true
          },
          "mediaReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "margin": {
            "$ref": "#/components/schemas/MarginDto"
          }
        },
        "additionalProperties": false
      },
      "BackgroundTokensDto": {
        "required": [
          "fill"
        ],
        "type": "object",
        "properties": {
          "fill": {
            "$ref": "#/components/schemas/ColorTokenDto"
          }
        },
        "additionalProperties": false
      },
      "BackgroundType": {
        "enum": [
          "Hex",
          "Image",
          "Gradient"
        ],
        "type": "string"
      },
      "BackgroundWithStrokeTokensDto": {
        "required": [
          "fill",
          "stroke"
        ],
        "type": "object",
        "properties": {
          "fill": {
            "$ref": "#/components/schemas/ColorTokenDto"
          },
          "stroke": {
            "$ref": "#/components/schemas/ColorTokenDto"
          }
        },
        "additionalProperties": false
      },
      "BaseImageDto": {
        "required": [
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "BaseNodeDto": {
        "required": [
          "id",
          "nodeType",
          "position",
          "simulationId"
        ],
        "type": "object",
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "nodeType",
          "mapping": {
            "dialogue": "#/components/schemas/NodeDto",
            "quiz": "#/components/schemas/QuizNodeDto",
            "page": "#/components/schemas/PageNodeDto",
            "no-match": "#/components/schemas/NoMatchNodeDto",
            "open-response": "#/components/schemas/OpenResponseNodeDto",
            "outcome": "#/components/schemas/OutcomeNodeDto",
            "hotspot": "#/components/schemas/HotspotNodeDto",
            "code": "#/components/schemas/CodeNodeDto",
            "poster": "#/components/schemas/NodeDto",
            "response": "#/components/schemas/NodeDto",
            "event": "#/components/schemas/NodeDto",
            "end": "#/components/schemas/NodeDto"
          }
        }
      },
      "BasicFolderDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "lockInfo": {
            "$ref": "#/components/schemas/FolderLockDto"
          }
        },
        "additionalProperties": false
      },
      "BasicMediaFolderDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "BeatNarrationStatus": {
        "enum": [
          "Pending",
          "Drafted",
          "Skipped",
          "Failed"
        ],
        "type": "string"
      },
      "BeatRenderStatus": {
        "enum": [
          "Pending",
          "Rendering",
          "Rendered",
          "Failed"
        ],
        "type": "string"
      },
      "BillingPeriod": {
        "enum": [
          "Monthly",
          "Annual"
        ],
        "type": "string"
      },
      "BillingPeriodV2": {
        "enum": [
          "Monthly",
          "Annual"
        ],
        "type": "string"
      },
      "BlendShapeDto": {
        "required": [
          "property",
          "value"
        ],
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "property": {
            "type": "string"
          },
          "value": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "BorderTokensDto": {
        "required": [
          "radius"
        ],
        "type": "object",
        "properties": {
          "radius": {
            "$ref": "#/components/schemas/RadiusTokenDto"
          }
        },
        "additionalProperties": false
      },
      "BreadcrumbDto": {
        "required": [
          "id",
          "name",
          "parentId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "parentId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "BrowDescriptorDto": {
        "type": "object",
        "properties": {
          "browColor": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "browTextureGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BuildVariant": {
        "enum": [
          "creator",
          "player"
        ],
        "type": "string"
      },
      "ButtonBlockActionDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "href": {
            "type": "string",
            "nullable": true
          },
          "target": {
            "type": "string",
            "nullable": true
          },
          "nodeId": {
            "type": "string",
            "nullable": true
          },
          "pageId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "ButtonBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "action",
              "text"
            ],
            "type": "object",
            "properties": {
              "text": {
                "type": "string"
              },
              "size": {
                "type": "string",
                "nullable": true
              },
              "align": {
                "type": "string",
                "nullable": true
              },
              "fullWidth": {
                "type": "boolean",
                "nullable": true
              },
              "backgroundColor": {
                "type": "string",
                "nullable": true
              },
              "textColor": {
                "type": "string",
                "nullable": true
              },
              "radius": {
                "type": "string",
                "nullable": true
              },
              "action": {
                "$ref": "#/components/schemas/ButtonBlockActionDto"
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "ButtonTokensDto": {
        "required": [
          "backgroundColor",
          "font",
          "textColor"
        ],
        "type": "object",
        "properties": {
          "backgroundColor": {
            "$ref": "#/components/schemas/ColorTokenDto"
          },
          "textColor": {
            "$ref": "#/components/schemas/ColorTokenDto"
          },
          "font": {
            "$ref": "#/components/schemas/FontTokenDto"
          }
        },
        "additionalProperties": false
      },
      "BuyNowDto": {
        "required": [
          "acknowledgeExtraCharges",
          "billingPeriod",
          "currency",
          "planType"
        ],
        "type": "object",
        "properties": {
          "planType": {
            "$ref": "#/components/schemas/PlanType"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "acknowledgeExtraCharges": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CalculateExtrasProration": {
        "required": [
          "values"
        ],
        "type": "object",
        "properties": {
          "values": {
            "type": "object",
            "properties": {
              "Creators": {
                "type": "integer",
                "format": "int32"
              },
              "PublishedStories": {
                "type": "integer",
                "format": "int32"
              },
              "Languages": {
                "type": "integer",
                "format": "int32"
              },
              "Characters": {
                "type": "integer",
                "format": "int32"
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "CalculateExtrasProrationResultDto": {
        "required": [
          "billingCycleEndDate",
          "billingCycleStartDate",
          "billingPeriod",
          "currentDate",
          "totalPrice",
          "values"
        ],
        "type": "object",
        "properties": {
          "currentDate": {
            "type": "string",
            "format": "date-time"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "billingCycleStartDate": {
            "type": "string",
            "format": "date-time"
          },
          "billingCycleEndDate": {
            "type": "string",
            "format": "date-time"
          },
          "values": {
            "type": "object",
            "properties": {
              "Creators": {
                "type": "number",
                "format": "double"
              },
              "PublishedStories": {
                "type": "number",
                "format": "double"
              },
              "Languages": {
                "type": "number",
                "format": "double"
              },
              "Characters": {
                "type": "number",
                "format": "double"
              }
            },
            "additionalProperties": false
          },
          "totalPrice": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "CalloutBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "content",
              "variant"
            ],
            "type": "object",
            "properties": {
              "variant": {
                "type": "string"
              },
              "backgroundColor": {
                "type": "string",
                "nullable": true
              },
              "borderColor": {
                "type": "string",
                "nullable": true
              },
              "textColor": {
                "type": "string",
                "nullable": true
              },
              "content": {
                "$ref": "#/components/schemas/RichTextDto"
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "CameraDto": {
        "required": [
          "panX",
          "panY",
          "zoom"
        ],
        "type": "object",
        "properties": {
          "zoom": {
            "type": "number",
            "format": "double"
          },
          "panX": {
            "type": "number",
            "format": "double"
          },
          "panY": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "CarouselBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "items"
            ],
            "type": "object",
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CarouselItemDto"
                }
              },
              "aspectRatio": {
                "type": "string",
                "nullable": true
              },
              "radius": {
                "type": "string",
                "nullable": true
              },
              "showDots": {
                "type": "boolean",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "CarouselItemDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "caption": {
            "type": "string",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "nullable": true
          },
          "alt": {
            "type": "string",
            "nullable": true
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          },
          "media": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          }
        },
        "additionalProperties": { }
      },
      "CharacterAnalysisDto": {
        "required": [
          "autoMapped",
          "hasSufficientSlots",
          "requiresMapping",
          "slotsAvailable",
          "slotsRequired",
          "slotsRequiredWorstCase"
        ],
        "type": "object",
        "properties": {
          "autoMapped": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterMappingDto"
            }
          },
          "requiresMapping": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterRequiresMappingDto"
            }
          },
          "slotsRequired": {
            "type": "integer",
            "format": "int32"
          },
          "slotsRequiredWorstCase": {
            "type": "integer",
            "format": "int32"
          },
          "slotsAvailable": {
            "type": "integer",
            "format": "int32"
          },
          "hasSufficientSlots": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "CharacterDto": {
        "required": [
          "blendShape",
          "clothing",
          "eyeColor",
          "gender",
          "icon",
          "id",
          "image",
          "isChild",
          "isGlobal",
          "isOneModel",
          "materialOverrides",
          "name",
          "serializedMaterials",
          "skinColor"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "isChild": {
            "type": "boolean",
            "deprecated": true
          },
          "eyeColor": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "skinColor": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "customSkinTexture": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "blendShape": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BlendShapeDto"
            }
          },
          "clothing": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ClothingDto"
            }
          },
          "skinTexture": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "deprecated": true
          },
          "isGlobal": {
            "type": "boolean",
            "deprecated": true
          },
          "skinTextureGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "browDescriptor": {
            "$ref": "#/components/schemas/BrowDescriptorDto"
          },
          "folderPath": {
            "type": "string",
            "nullable": true
          },
          "isOneModel": {
            "type": "boolean",
            "deprecated": true
          },
          "materialOverrides": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MaterialOverrideDto"
            }
          },
          "serializedMaterials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SerializedMaterialDto"
            }
          },
          "definitionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CharacterMappingDto": {
        "required": [
          "isAutoMatched",
          "name",
          "nodeCount",
          "sourceCharacterId",
          "targetCharacterId"
        ],
        "type": "object",
        "properties": {
          "sourceCharacterId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "nodeCount": {
            "type": "integer",
            "format": "int32"
          },
          "iconUrl": {
            "type": "string",
            "nullable": true
          },
          "targetCharacterId": {
            "type": "string"
          },
          "isAutoMatched": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CharacterPoseDto": {
        "enum": [
          "Standing",
          "Sitting",
          "Desk"
        ],
        "type": "string"
      },
      "CharacterRequiresMappingDto": {
        "required": [
          "name",
          "nodeCount",
          "sourceCharacterId",
          "suggestions"
        ],
        "type": "object",
        "properties": {
          "sourceCharacterId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "nodeCount": {
            "type": "integer",
            "format": "int32"
          },
          "iconUrl": {
            "type": "string",
            "nullable": true
          },
          "suggestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SuggestedCharacterDto"
            }
          }
        },
        "additionalProperties": false
      },
      "CharacterSpeakingStyleDto": {
        "required": [
          "characterId",
          "pitch",
          "rate",
          "style"
        ],
        "type": "object",
        "properties": {
          "characterId": {
            "type": "string"
          },
          "style": {
            "type": "string"
          },
          "pitch": {
            "type": "integer",
            "format": "int32"
          },
          "rate": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CharacterVoiceSuggestionDto": {
        "required": [
          "sourceCharacterId"
        ],
        "type": "object",
        "properties": {
          "sourceCharacterId": {
            "type": "string"
          },
          "suggestedVoiceShortName": {
            "type": "string",
            "nullable": true
          },
          "voice": {
            "$ref": "#/components/schemas/VoiceInfoDto"
          },
          "sourceVoice": {
            "$ref": "#/components/schemas/VoiceInfoDto"
          },
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ChatMessageDto": {
        "required": [
          "id",
          "role",
          "timestamp"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "content": {
            "type": "string",
            "nullable": true
          },
          "timestamp": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "ChatResponseDto": {
        "required": [
          "assistantMessage",
          "userMessage"
        ],
        "type": "object",
        "properties": {
          "userMessage": {
            "$ref": "#/components/schemas/ChatMessageDto"
          },
          "assistantMessage": {
            "$ref": "#/components/schemas/ChatMessageDto"
          },
          "guidelines": {
            "$ref": "#/components/schemas/GuidelinesDto"
          }
        },
        "additionalProperties": false
      },
      "CheckmarkSizeDto": {
        "enum": [
          "Small",
          "Medium",
          "Large"
        ],
        "type": "string"
      },
      "ChooseSpotReadAloudVoiceDto": {
        "required": [
          "locale",
          "voiceShortName"
        ],
        "type": "object",
        "properties": {
          "voiceShortName": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ClothingDto": {
        "required": [
          "guid",
          "materialOverrides",
          "materials",
          "serializedMaterials",
          "variant"
        ],
        "type": "object",
        "properties": {
          "guid": {
            "type": "string"
          },
          "materials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MaterialDto"
            }
          },
          "variant": {
            "type": "integer",
            "format": "int32"
          },
          "materialOverrides": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MaterialOverrideDto"
            }
          },
          "serializedMaterials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SerializedMaterialDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Cmi5AccountDto": {
        "type": "object",
        "properties": {
          "homePage": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Cmi5LaunchParamsDto": {
        "type": "object",
        "properties": {
          "fetchUrl": {
            "type": "string",
            "nullable": true
          },
          "endpoint": {
            "type": "string",
            "nullable": true
          },
          "authToken": {
            "type": "string",
            "nullable": true
          },
          "activityId": {
            "type": "string",
            "nullable": true
          },
          "registration": {
            "type": "string",
            "nullable": true
          },
          "actor": {
            "$ref": "#/components/schemas/XApiActorDto"
          },
          "sessionId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CodeNodeDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          },
          {
            "required": [
              "images",
              "label",
              "nodeType"
            ],
            "type": "object",
            "properties": {
              "nodeType": {
                "$ref": "#/components/schemas/NodeTypeDto"
              },
              "label": {
                "type": "string"
              },
              "htmlUrl": {
                "type": "string",
                "nullable": true
              },
              "fileName": {
                "type": "string",
                "nullable": true
              },
              "images": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CodeNodeImageDto"
                }
              },
              "continueButton": {
                "$ref": "#/components/schemas/NodeContinueButtonDto"
              },
              "background": {
                "$ref": "#/components/schemas/QuizBackgroundDto"
              }
            },
            "additionalProperties": false
          },
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ]
      },
      "CodeNodeImageDto": {
        "required": [
          "contentType",
          "name",
          "sizeBytes",
          "url"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "contentType": {
            "type": "string"
          },
          "sizeBytes": {
            "type": "integer",
            "format": "int64"
          },
          "mediaReferenceId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ColorDto": {
        "type": "object",
        "properties": {
          "r": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "g": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "b": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "brightness": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ColorTokenDto": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ColorValue": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ColumnWidthDto": {
        "required": [
          "columnId",
          "width"
        ],
        "type": "object",
        "properties": {
          "columnId": {
            "type": "string"
          },
          "width": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "CommentDto": {
        "required": [
          "createdAt",
          "createdById",
          "createdByName",
          "createdByType",
          "id",
          "isResolved",
          "messages",
          "position",
          "simulationId",
          "unreadCount"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "nodeOffset": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "isResolved": {
            "type": "boolean"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "createdById": {
            "type": "string"
          },
          "createdByName": {
            "type": "string"
          },
          "createdByType": {
            "type": "string"
          },
          "resolvedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "resolvedById": {
            "type": "string",
            "nullable": true
          },
          "resolvedByName": {
            "type": "string",
            "nullable": true
          },
          "resolvedByType": {
            "type": "string",
            "nullable": true
          },
          "messages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CommentMessageDto"
            }
          },
          "unreadCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CommentMessageDto": {
        "required": [
          "commentId",
          "content",
          "createdAt",
          "createdById",
          "createdByName",
          "createdByType",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "commentId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "createdById": {
            "type": "string"
          },
          "createdByName": {
            "type": "string"
          },
          "createdByType": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CompareTextSimilarityRequestDto": {
        "required": [
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ComparisonImageDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "nullable": true
          },
          "alt": {
            "type": "string",
            "nullable": true
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          },
          "media": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          }
        },
        "additionalProperties": { }
      },
      "CompleteSignUpQuestionnaireDto": {
        "type": "object",
        "properties": {
          "currency": {
            "$ref": "#/components/schemas/Currency"
          }
        },
        "additionalProperties": false
      },
      "ConfettiStyleDto": {
        "enum": [
          "Confetti",
          "Fireworks"
        ],
        "type": "string"
      },
      "ConsequenceDto": {
        "required": [
          "enabled",
          "index",
          "showEffect",
          "skillId",
          "value"
        ],
        "type": "object",
        "properties": {
          "skillId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "enabled": {
            "type": "boolean"
          },
          "value": {
            "type": "integer",
            "format": "int32"
          },
          "showEffect": {
            "type": "boolean"
          },
          "index": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ContentComponentDto": {
        "required": [
          "background",
          "border",
          "buttons",
          "text"
        ],
        "type": "object",
        "properties": {
          "background": {
            "$ref": "#/components/schemas/BackgroundTokensDto"
          },
          "text": {
            "$ref": "#/components/schemas/TextTokensDto"
          },
          "buttons": {
            "$ref": "#/components/schemas/ButtonTokensDto"
          },
          "border": {
            "$ref": "#/components/schemas/BorderTokensDto"
          }
        },
        "additionalProperties": false
      },
      "ContentLengthOption": {
        "enum": [
          "Short",
          "Medium",
          "Long"
        ],
        "type": "string"
      },
      "ConversionBlockerDto": {
        "required": [
          "allowed",
          "type",
          "used"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PlanAddonType"
          },
          "used": {
            "type": "integer",
            "format": "int32"
          },
          "allowed": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ConversionPreviewDto": {
        "required": [
          "addonOverages",
          "blockers",
          "featuresLost",
          "requiresAcknowledgement"
        ],
        "type": "object",
        "properties": {
          "blockers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConversionBlockerDto"
            }
          },
          "addonOverages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AddonOverageItemDto"
            }
          },
          "featuresLost": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FeatureLossDto"
            }
          },
          "requiresAcknowledgement": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CreateAiStudioSessionRequest": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/AiStudioSessionType"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "imagePurpose": {
            "$ref": "#/components/schemas/AiStudioImagePurpose"
          }
        },
        "additionalProperties": false
      },
      "CreateApiKeyRequestDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateApiKeyResponseDto": {
        "required": [
          "createdAt",
          "id",
          "keyPrefix",
          "name",
          "plaintext",
          "scopes"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "plaintext": {
            "type": "string"
          },
          "keyPrefix": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "CreateCharacterDto": {
        "required": [
          "blendShape",
          "clothing",
          "eyeColor",
          "gender",
          "icon",
          "image",
          "isChild",
          "isOneModel",
          "name",
          "skinColor"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "isChild": {
            "type": "boolean"
          },
          "eyeColor": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "skinColor": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "customSkinTexture": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "blendShape": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BlendShapeDto"
            }
          },
          "clothing": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ClothingDto"
            }
          },
          "skinTexture": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "deprecated": true
          },
          "skinTextureGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "browDescriptor": {
            "$ref": "#/components/schemas/BrowDescriptorDto"
          },
          "folderPath": {
            "type": "string",
            "nullable": true
          },
          "isOneModel": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CreateCommentDto": {
        "required": [
          "content",
          "id",
          "messageId",
          "position"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "messageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "nodeOffset": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          }
        },
        "additionalProperties": false
      },
      "CreateEdgeDto": {
        "required": [
          "source",
          "target"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "type": "string"
          },
          "target": {
            "type": "string"
          },
          "sourceHandle": {
            "$ref": "#/components/schemas/SourceHandleTypeDto"
          },
          "transition": {
            "$ref": "#/components/schemas/EdgeTransitionDto"
          }
        },
        "additionalProperties": false
      },
      "CreateGoogleFontReferenceDto": {
        "required": [
          "googleFontFamily",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "googleFontFamily": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "CreateNodeBetweenDto": {
        "required": [
          "edgeId",
          "nodeId",
          "position",
          "source",
          "target",
          "type"
        ],
        "type": "object",
        "properties": {
          "source": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "type": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "target": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "edgeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "label": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateNodeBetweenResultDto": {
        "required": [
          "newEdge",
          "node",
          "updatedEdges"
        ],
        "type": "object",
        "properties": {
          "node": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/BaseNodeDto"
              },
              {
                "$ref": "#/components/schemas/NodeDto"
              },
              {
                "$ref": "#/components/schemas/PageNodeDto"
              },
              {
                "$ref": "#/components/schemas/CodeNodeDto"
              }
            ]
          },
          "newEdge": {
            "$ref": "#/components/schemas/EdgeDto"
          },
          "updatedEdges": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdgeDto"
            }
          }
        },
        "additionalProperties": false
      },
      "CreateNodeDto": {
        "required": [
          "audioTimelineStartTime",
          "color",
          "label",
          "nodeType",
          "position",
          "randomResponseOrder",
          "sceneBackground",
          "speakerIndex",
          "timelineDuration",
          "voiceoverEnabled"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "label": {
            "type": "string"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "color": {
            "type": "string",
            "deprecated": true
          },
          "eventId": {
            "type": "string",
            "nullable": true
          },
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "speakerIndex": {
            "type": "string"
          },
          "speakerId": {
            "type": "string",
            "nullable": true
          },
          "timelineDuration": {
            "type": "number",
            "format": "float"
          },
          "audioTimelineStartTime": {
            "type": "number",
            "format": "double"
          },
          "sceneBackground": {
            "type": "string"
          },
          "selectedSceneId": {
            "type": "string",
            "nullable": true
          },
          "consequences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsequenceDto"
            },
            "nullable": true
          },
          "voiceoverEnabled": {
            "type": "boolean"
          },
          "randomResponseOrder": {
            "type": "boolean"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "isSuccess": {
            "type": "boolean",
            "nullable": true,
            "deprecated": true
          },
          "displayPosterIcon": {
            "type": "boolean",
            "nullable": true,
            "deprecated": true
          },
          "camera": {
            "$ref": "#/components/schemas/CameraDto"
          },
          "references": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "sequence": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EventSequenceItemDto"
            },
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeCharacterDto"
            },
            "nullable": true
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "audioVolume": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "speakingStyles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterSpeakingStyleDto"
            },
            "nullable": true
          },
          "posterNodeParameters": {
            "$ref": "#/components/schemas/PosterNodeParametersDto"
          }
        },
        "additionalProperties": false
      },
      "CreateNodeDtoV2": {
        "required": [
          "position",
          "source",
          "type"
        ],
        "type": "object",
        "properties": {
          "source": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "type": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "edgeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateNodeResultDto": {
        "required": [
          "edge",
          "node"
        ],
        "type": "object",
        "properties": {
          "node": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/BaseNodeDto"
              },
              {
                "$ref": "#/components/schemas/NodeDto"
              },
              {
                "$ref": "#/components/schemas/PageNodeDto"
              },
              {
                "$ref": "#/components/schemas/CodeNodeDto"
              }
            ]
          },
          "edge": {
            "$ref": "#/components/schemas/EdgeDto"
          }
        },
        "additionalProperties": false
      },
      "CreateReviewerShareRequest": {
        "required": [
          "mode"
        ],
        "type": "object",
        "properties": {
          "mode": {
            "$ref": "#/components/schemas/StoryReviewGrantMode"
          },
          "invitedEmail": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSceneDto": {
        "required": [
          "ambienceVolume",
          "ambientSound",
          "characters",
          "guid",
          "image",
          "indoorLighting",
          "name",
          "sceneBackground",
          "sceneCrop",
          "timeOfDay",
          "title"
        ],
        "type": "object",
        "properties": {
          "guid": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "timeOfDay": {
            "type": "number",
            "format": "float"
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "ambientSound": {
            "type": "string"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "sceneBackground": {
            "type": "string"
          },
          "sceneCrop": {
            "$ref": "#/components/schemas/MarginDto"
          },
          "title": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SceneCharacterDto"
            }
          },
          "characterSpots": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "hidden": {
            "type": "boolean",
            "nullable": true
          },
          "locked": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSessionRequestDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "origin": {
            "$ref": "#/components/schemas/ScriptAssistantSessionOrigin"
          }
        },
        "additionalProperties": false
      },
      "CreateSessionResponseDto": {
        "required": [
          "createdAt",
          "origin",
          "sessionId"
        ],
        "type": "object",
        "properties": {
          "sessionId": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "origin": {
            "$ref": "#/components/schemas/ScriptAssistantSessionOrigin"
          }
        },
        "additionalProperties": false
      },
      "CreateSimulationDto": {
        "required": [
          "characterIds",
          "characters",
          "gradient",
          "languageCode",
          "sceneId",
          "title"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "languageCode": {
            "type": "string"
          },
          "sceneId": {
            "type": "string"
          },
          "characterIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "gradient": {
            "$ref": "#/components/schemas/GradientDto"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpsertSimulationCharacterDto"
            }
          },
          "startingNodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "startingNodePosition": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "startingNodeCharacters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "storyType": {
            "type": "string",
            "nullable": true
          },
          "storyDescription": {
            "type": "string",
            "nullable": true
          },
          "voiceover": {
            "$ref": "#/components/schemas/VoiceOverDto"
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSlideshowStoryResponseDto": {
        "required": [
          "message",
          "storyCreationCompleted",
          "storyCreationMissingSlideCount",
          "storyCreationStatus"
        ],
        "type": "object",
        "properties": {
          "storyCreationStatus": {
            "$ref": "#/components/schemas/SlideshowStoryCreationStatus"
          },
          "simulationId": {
            "type": "string",
            "description": "Set only for WeAreLearning.R2D2.Core.ScriptAssistant.Entities.SlideshowStoryCreationStatus.Created — a build that has just\r\nstarted has no simulation yet. Null is what tells the client to keep polling rather than\r\nnavigate.",
            "nullable": true
          },
          "storyCreationCompleted": {
            "type": "boolean",
            "description": "Whether the story is FINISHED rather than merely created. The client opens the story only\r\nwhen this is true, and otherwise waits for the storyboard to report it — the same field,\r\nunder the same name, as `StoryboardDto.StoryCreationCompleted`."
          },
          "storyCreationMissingSlideCount": {
            "type": "integer",
            "description": "Slides a finished story is missing or has without a picture (WE-2694) - the same field, under\r\nthe same name, as `StoryboardDto.StoryCreationMissingSlideCount`. Zero unless finished.",
            "format": "int32"
          },
          "message": {
            "type": "string"
          }
        },
        "additionalProperties": false,
        "description": "What a slideshow's Create Story press answers with: where the session stands, and the story when\r\none exists."
      },
      "CreateSpotDto": {
        "required": [
          "spotId"
        ],
        "type": "object",
        "properties": {
          "spotId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "backgroundColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "buttonColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "textColor": {
            "$ref": "#/components/schemas/ColorValue"
          }
        },
        "additionalProperties": false
      },
      "CreateStoryResponseDto": {
        "required": [
          "message",
          "success"
        ],
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "simulationId": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string"
          },
          "failureReason": {
            "type": "string",
            "description": "Typed failure reason (e.g. \"NoOutline\", \"CharactersNotInSlots\") so the frontend can branch\r\non it instead of matching the human-readable WeAreLearning.R2D2.Api.DTO.ScriptAssistant.CreateStoryResponseDto.Message. Null on success.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateStorySkillDto": {
        "required": [
          "feedbacks",
          "id",
          "name",
          "showEffect"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "showEffect": {
            "type": "boolean"
          },
          "feedbacks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Feedback"
            }
          }
        },
        "additionalProperties": false
      },
      "CreateSubscriptionDto": {
        "required": [
          "period",
          "plan"
        ],
        "type": "object",
        "properties": {
          "plan": {
            "$ref": "#/components/schemas/SubscriptionPlanType"
          },
          "period": {
            "$ref": "#/components/schemas/BillingPeriod"
          },
          "promotionCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSubscriptionDtoV2": {
        "required": [
          "currency",
          "planType"
        ],
        "type": "object",
        "properties": {
          "planType": {
            "$ref": "#/components/schemas/PlanType"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          }
        },
        "additionalProperties": false
      },
      "CreateTenantColorDto": {
        "required": [
          "hexValue",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "hexValue": {
            "minLength": 1,
            "pattern": "^#[0-9A-Fa-f]{6}$",
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "CreateThemeDto": {
        "required": [
          "content",
          "id",
          "name",
          "responses"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "content": {
            "$ref": "#/components/schemas/ContentComponentDto"
          },
          "responses": {
            "$ref": "#/components/schemas/ResponsesComponentDto"
          }
        },
        "additionalProperties": false
      },
      "CreateTimelineDto": {
        "required": [
          "characterId",
          "gestures",
          "idles",
          "nodeId"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "characterId": {
            "type": "string"
          },
          "gestures": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GestureDto"
            }
          },
          "idles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdleDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Currency": {
        "enum": [
          "USD",
          "EUR",
          "NOK"
        ],
        "type": "string"
      },
      "CustomerBillingDetailsDto": {
        "required": [
          "address",
          "email",
          "orderPurchaseName",
          "organizationNumber"
        ],
        "type": "object",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/AddressDto"
          },
          "companyName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string"
          },
          "organizationNumber": {
            "type": "string"
          },
          "orderPurchaseName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "DashboardDto": {
        "required": [
          "characters",
          "scenes",
          "simulations"
        ],
        "type": "object",
        "properties": {
          "simulations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardSimulationDto"
            }
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterDto"
            }
          },
          "scenes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SceneDto"
            }
          },
          "storiesFolders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BasicFolderDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardSimulationCharacterDto": {
        "required": [
          "gender",
          "icon",
          "id",
          "image",
          "isChild",
          "isGlobal",
          "name",
          "voiceInfo"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "isChild": {
            "type": "boolean"
          },
          "icon": {
            "type": "string"
          },
          "isGlobal": {
            "type": "boolean"
          },
          "voiceInfo": {
            "$ref": "#/components/schemas/VoiceDto"
          }
        },
        "additionalProperties": false
      },
      "DashboardSimulationDto": {
        "required": [
          "characters",
          "createdAt",
          "createdBy",
          "description",
          "gradient",
          "id",
          "languageCode",
          "publicId",
          "status",
          "title",
          "voiceover"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "createdBy": {
            "type": "string"
          },
          "deletedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/SimulationStatusDto"
          },
          "scene": {
            "$ref": "#/components/schemas/SceneDto"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardSimulationCharacterDto"
            }
          },
          "description": {
            "type": "string"
          },
          "publicId": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "gradient": {
            "type": "string"
          },
          "protection": {
            "$ref": "#/components/schemas/SimulationProtection"
          },
          "sharedViaIntegration": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "plays": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "completions": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "lockInfo": {
            "$ref": "#/components/schemas/SimulationLockDto"
          },
          "folderLockInfo": {
            "$ref": "#/components/schemas/FolderLockDto"
          },
          "voiceover": {
            "$ref": "#/components/schemas/VoiceOverDto"
          },
          "playSettings": {
            "$ref": "#/components/schemas/SimulationPlaySettingsDto"
          },
          "themeId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DashboardSimulationDtoPaginatedDto": {
        "required": [
          "count",
          "data",
          "pageSize"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardSimulationDto"
            }
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "continuationToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DeckRenderFailureReason": {
        "enum": [
          "None",
          "TooLarge",
          "ConversionFailed",
          "SourceMissing",
          "CouldNotStart"
        ],
        "type": "string"
      },
      "DeleteNodesDto": {
        "required": [
          "nodeIds"
        ],
        "type": "object",
        "properties": {
          "nodeIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "DeletedStorySortBy": {
        "enum": [
          "DeletedAt",
          "CreatedAt",
          "Title"
        ],
        "type": "string"
      },
      "DialogueNodeCharacterOverridesDto": {
        "required": [
          "hidden",
          "positionOverride",
          "rotationOverride"
        ],
        "type": "object",
        "properties": {
          "positionOverride": {
            "type": "boolean"
          },
          "rotationOverride": {
            "type": "boolean"
          },
          "hidden": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "DialogueNodeOverridesDto": {
        "required": [
          "ambienceVolumeOverride",
          "cameraZoomOverride"
        ],
        "type": "object",
        "properties": {
          "cameraZoomOverride": {
            "type": "boolean"
          },
          "ambienceVolumeOverride": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "DividerBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "style"
            ],
            "type": "object",
            "properties": {
              "style": {
                "type": "string"
              },
              "color": {
                "type": "string",
                "nullable": true
              },
              "thickness": {
                "type": "integer",
                "format": "int32",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "DoubleStringValueTuple": {
        "required": [
          "item1"
        ],
        "type": "object",
        "properties": {
          "item1": {
            "type": "number",
            "format": "double"
          },
          "item2": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DuplicateNodeDto": {
        "required": [
          "newNodeId",
          "position"
        ],
        "type": "object",
        "properties": {
          "newNodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "DuplicateThemeDto": {
        "required": [
          "newName"
        ],
        "type": "object",
        "properties": {
          "newName": {
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EdgeDto": {
        "required": [
          "id",
          "simulationId",
          "source",
          "target"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "target": {
            "type": "string"
          },
          "sourceHandle": {
            "$ref": "#/components/schemas/SourceHandleTypeDto"
          },
          "transition": {
            "$ref": "#/components/schemas/EdgeTransitionDto"
          }
        },
        "additionalProperties": false
      },
      "EdgeTransitionDto": {
        "required": [
          "duration",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/EdgeTransitionTypeDto"
          },
          "duration": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "EdgeTransitionTypeDto": {
        "enum": [
          "smooth",
          "instant"
        ],
        "type": "string"
      },
      "EditAiStudioFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditCastCharacterDto": {
        "type": "object",
        "properties": {
          "characterName": {
            "type": "string",
            "nullable": true
          },
          "selectedVoiceName": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "desiredOutcomeFromConversation": {
            "type": "string",
            "nullable": true
          },
          "actsLike": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EditCustomerEmailDto": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditDefaultPaymentMethodDto": {
        "required": [
          "paymentMethodId"
        ],
        "type": "object",
        "properties": {
          "paymentMethodId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditDialogueNodeCharacterOverridesDto": {
        "required": [
          "overrides",
          "position",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          },
          "overrides": {
            "$ref": "#/components/schemas/DialogueNodeCharacterOverridesDto"
          }
        },
        "additionalProperties": false
      },
      "EditEdgeDto": {
        "required": [
          "source",
          "target"
        ],
        "type": "object",
        "properties": {
          "source": {
            "type": "string"
          },
          "target": {
            "type": "string"
          },
          "sourceHandle": {
            "$ref": "#/components/schemas/SourceHandleTypeDto"
          },
          "transition": {
            "$ref": "#/components/schemas/EdgeTransitionDto"
          }
        },
        "additionalProperties": false
      },
      "EditExternalSystemDto": {
        "required": [
          "enabled",
          "system"
        ],
        "type": "object",
        "properties": {
          "system": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "apiUrl": {
            "type": "string",
            "nullable": true
          },
          "apiKey": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          },
          "name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EditFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditInvoiceToEmailAddressDto": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditLocationDto": {
        "required": [
          "ambienceVolume",
          "ambientSound",
          "guid",
          "indoorLighting",
          "margin",
          "name",
          "timeOfDay"
        ],
        "type": "object",
        "properties": {
          "guid": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "timeOfDay": {
            "type": "number",
            "format": "float"
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "ambientSound": {
            "type": "string"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "margin": {
            "$ref": "#/components/schemas/MarginDto"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EditNodeAudioSourceDto": {
        "required": [
          "audioType"
        ],
        "type": "object",
        "properties": {
          "audioType": {
            "$ref": "#/components/schemas/AudioTypeDto"
          }
        },
        "additionalProperties": false
      },
      "EditNodeAudioVolumeDto": {
        "required": [
          "volume"
        ],
        "type": "object",
        "properties": {
          "volume": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "EditNodeDto": {
        "required": [
          "nodeType",
          "randomResponseOrder",
          "shouldDoAiRephrase",
          "voiceoverEnabled"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "label": {
            "type": "string",
            "nullable": true
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "color": {
            "type": "string",
            "nullable": true
          },
          "eventId": {
            "type": "string",
            "nullable": true
          },
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "speakerIndex": {
            "type": "string",
            "nullable": true
          },
          "speakerId": {
            "type": "string",
            "nullable": true
          },
          "timelineDuration": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "shouldDoAiRephrase": {
            "type": "boolean"
          },
          "audioTimelineStartTime": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "audioType": {
            "$ref": "#/components/schemas/AudioTypeDto"
          },
          "audioGuid": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "sceneBackground": {
            "type": "string",
            "nullable": true
          },
          "selectedSceneId": {
            "type": "string",
            "nullable": true
          },
          "consequences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsequenceDto"
            },
            "nullable": true
          },
          "voiceoverEnabled": {
            "type": "boolean"
          },
          "randomResponseOrder": {
            "type": "boolean"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "isSuccess": {
            "type": "boolean",
            "nullable": true
          },
          "displayPosterIcon": {
            "type": "boolean",
            "nullable": true
          },
          "camera": {
            "$ref": "#/components/schemas/CameraDto"
          },
          "references": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "sequence": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EventSequenceItemDto"
            },
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeCharacterDto"
            },
            "nullable": true
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "timeOfDay": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "audioVolume": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "speakingStyles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterSpeakingStyleDto"
            },
            "nullable": true
          },
          "posterNodeParameters": {
            "$ref": "#/components/schemas/PosterNodeParametersDto"
          },
          "dialogueNodeOverrides": {
            "$ref": "#/components/schemas/DialogueNodeOverridesDto"
          }
        },
        "additionalProperties": false
      },
      "EditNodePosition": {
        "required": [
          "nodeId",
          "position"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "EditNodeSpeaker": {
        "required": [
          "nodeId",
          "speakerIndex"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "speakerIndex": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditNodeVoiceMimicDto": {
        "required": [
          "isVoiceMimicEnabled"
        ],
        "type": "object",
        "properties": {
          "isVoiceMimicEnabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "EditSceneDto": {
        "required": [
          "ambienceVolume",
          "ambientSound",
          "characters",
          "guid",
          "image",
          "indoorLighting",
          "name",
          "sceneBackground",
          "sceneCrop",
          "timeOfDay",
          "title"
        ],
        "type": "object",
        "properties": {
          "guid": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "timeOfDay": {
            "type": "number",
            "format": "float"
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "ambientSound": {
            "type": "string"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "sceneBackground": {
            "type": "string"
          },
          "sceneCrop": {
            "$ref": "#/components/schemas/MarginDto"
          },
          "title": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SceneCharacterDto"
            }
          },
          "characterSpots": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "hidden": {
            "type": "boolean",
            "nullable": true
          },
          "locked": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EditSimulationDto": {
        "required": [
          "gradient",
          "languageCode",
          "title"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "skillExplorerEnabled": {
            "type": "boolean",
            "nullable": true
          },
          "skills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkillDto"
            },
            "nullable": true
          },
          "gradient": {
            "$ref": "#/components/schemas/GradientDto"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpsertSimulationCharacterDto"
            },
            "nullable": true
          },
          "voiceover": {
            "$ref": "#/components/schemas/EditVoiceOverDto"
          },
          "characterIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "storyType": {
            "type": "string",
            "nullable": true
          },
          "storyDescription": {
            "type": "string",
            "nullable": true
          },
          "muteAmbienceSounds": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EditStoryLanguageDto": {
        "required": [
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "languageCode": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditStoryLanguageResultDto": {
        "required": [
          "characters",
          "languageCode",
          "updatedVoiceOver"
        ],
        "type": "object",
        "properties": {
          "languageCode": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationCharacterDto"
            }
          },
          "updatedVoiceOver": {
            "$ref": "#/components/schemas/VoiceOverDto"
          }
        },
        "additionalProperties": false
      },
      "EditSubscriptionAddonsDto": {
        "required": [
          "values"
        ],
        "type": "object",
        "properties": {
          "values": {
            "type": "object",
            "properties": {
              "Creators": {
                "type": "integer",
                "format": "int32"
              },
              "PublishedStories": {
                "type": "integer",
                "format": "int32"
              },
              "Languages": {
                "type": "integer",
                "format": "int32"
              },
              "Characters": {
                "type": "integer",
                "format": "int32"
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "EditSubscriptionPlanDto": {
        "required": [
          "billingPeriod",
          "currency",
          "planType"
        ],
        "type": "object",
        "properties": {
          "planType": {
            "$ref": "#/components/schemas/PlanType"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          }
        },
        "additionalProperties": false
      },
      "EditTenantAccountNameDto": {
        "required": [
          "accountName"
        ],
        "type": "object",
        "properties": {
          "accountName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditTenantOrganizationDto": {
        "required": [
          "contactFirstName",
          "contactLastname",
          "organization"
        ],
        "type": "object",
        "properties": {
          "organization": {
            "type": "string"
          },
          "contactFirstName": {
            "type": "string"
          },
          "contactLastname": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditUserProfileDto": {
        "required": [
          "firstName",
          "lastName"
        ],
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EditUserRoleDto": {
        "required": [
          "role"
        ],
        "type": "object",
        "properties": {
          "role": {
            "$ref": "#/components/schemas/RoleDto"
          }
        },
        "additionalProperties": false
      },
      "EditVoiceOverDto": {
        "required": [
          "enabled",
          "gender",
          "selectedVoiceName"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "selectedVoiceName": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          }
        },
        "additionalProperties": false
      },
      "EmbedBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "url"
            ],
            "type": "object",
            "properties": {
              "url": {
                "type": "string"
              },
              "caption": {
                "type": "string",
                "nullable": true
              },
              "aspectRatio": {
                "type": "string",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "EnhanceNodeTextDto": {
        "required": [
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EnhancedNodeTextDto": {
        "required": [
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ErrorCode": {
        "required": [
          "code",
          "message"
        ],
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/ErrorEnum"
          },
          "message": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ErrorEnum": {
        "enum": [
          "PublishSimulationLimitReached",
          "MissingPaymentMethod",
          "StripeUnhandledException",
          "SimulationLocked",
          "NotEnoughPermissions",
          "SwitchWorkspaceError",
          "TenantHasNoSubscription",
          "OverlappingNode",
          "SubscriptionDowngradeCreatorsUsageError",
          "SubscriptionDowngradePublishedStoriesUsageError",
          "CreatorsLimitExceeded",
          "LanguagesLimitExceeded",
          "PublishedStoriesLimitExceeded",
          "CharactersLimitExceeded",
          "StoryNotPublished",
          "InvalidSimulationData",
          "TenantMissingCharacters",
          "TenantMissingLanguage",
          "InvalidMediaReference",
          "MediaReferenceMetadataRequired",
          "ImportLanguageBlocked",
          "ImportLanguageTargetNotOwned",
          "ImportLanguageSlotActivationUnavailable",
          "ImportCharacterCrossGender",
          "ImportTranslationFailed",
          "ImportVoiceNotFound",
          "ImportVoiceGenderMismatch",
          "ImportVoiceLocaleMismatch",
          "ImportVoiceUnknownSourceCharacter",
          "ImportVoiceoverNoVoiceForLanguage",
          "ImportSnapshotExpired",
          "ImportSnapshotNotFound",
          "ImportFileInvalid",
          "VoiceIsDefaultFallbackRequiresPublicState",
          "ScriptAssistantStorageLimitExceeded",
          "ScriptAssistantQuotaExceeded",
          "ProvisioningUserExistsInAuth0",
          "ProvisioningUserExistsInDb",
          "ProvisioningStripeCustomerExists",
          "ProvisioningInvalidPriceId",
          "ProvisioningRolledBack",
          "ProvisioningOrphanedState",
          "AiStudioVideoTooLong",
          "AiStudioAudioFileTooLarge",
          "AiStudioInputTooLarge",
          "Audio2FaceGenerationFailed",
          "Audio2FaceAudioTooLong",
          "AiStudioInsufficientCredits",
          "AiStudioCreatorTopUpsDisabled",
          "ScormExportSubscriptionRequired",
          "ScormExportNotAvailableInTrial",
          "ScriptAssistantUploadRejected",
          "StoriesFolderLocked"
        ],
        "type": "string"
      },
      "EventSequenceActionDto": {
        "enum": [
          "AddCharacter",
          "RemoveCharacter",
          "EditLocation"
        ],
        "type": "string"
      },
      "EventSequenceCharacterDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "EventSequenceItemDto": {
        "required": [
          "action",
          "order",
          "relationship",
          "showDelay"
        ],
        "type": "object",
        "properties": {
          "action": {
            "$ref": "#/components/schemas/EventSequenceActionDto"
          },
          "relationship": {
            "$ref": "#/components/schemas/EventSequenceRelationshipDto"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "showDelay": {
            "type": "integer",
            "format": "int32"
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "character": {
            "$ref": "#/components/schemas/EventSequenceCharacterDto"
          },
          "transition": {
            "$ref": "#/components/schemas/EventSequenceTransitionDto"
          }
        },
        "additionalProperties": false
      },
      "EventSequenceRelationshipDto": {
        "enum": [
          "With",
          "After"
        ],
        "type": "string"
      },
      "EventSequenceTransitionDirectionDto": {
        "enum": [
          "Left",
          "Right"
        ],
        "type": "string"
      },
      "EventSequenceTransitionDto": {
        "required": [
          "duration",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/EventSequenceTransitionTypeDto"
          },
          "direction": {
            "$ref": "#/components/schemas/EventSequenceTransitionDirectionDto"
          },
          "duration": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "EventSequenceTransitionTypeDto": {
        "enum": [
          "FadeIn",
          "WalkIn",
          "WalkOut"
        ],
        "type": "string"
      },
      "ExternalSystem": {
        "enum": [
          "None",
          "Motimate",
          "CustomExperienceApi",
          "LearningCenter"
        ],
        "type": "string"
      },
      "ExternalSystemDefinitionDto": {
        "required": [
          "name",
          "system"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "system": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "logo": {
            "type": "string",
            "nullable": true
          },
          "helpArticleId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ExternalSystemDto": {
        "required": [
          "enabled",
          "id",
          "system"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "system": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "logo": {
            "type": "string",
            "nullable": true
          },
          "apiUrl": {
            "type": "string",
            "nullable": true
          },
          "apiKey": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "FeatureDto": {
        "required": [
          "enabled",
          "name"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "FeatureLossDto": {
        "required": [
          "feature",
          "inUse"
        ],
        "type": "object",
        "properties": {
          "feature": {
            "type": "string"
          },
          "inUse": {
            "type": "boolean"
          },
          "activeCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Feedback": {
        "required": [
          "index",
          "range",
          "value"
        ],
        "type": "object",
        "properties": {
          "index": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "range": {
            "$ref": "#/components/schemas/Range"
          }
        },
        "additionalProperties": false
      },
      "FeedbackDto": {
        "required": [
          "index",
          "range",
          "value"
        ],
        "type": "object",
        "properties": {
          "index": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "range": {
            "$ref": "#/components/schemas/RangeDto"
          }
        },
        "additionalProperties": false
      },
      "File": {
        "type": "object",
        "additionalProperties": false
      },
      "FileType": {
        "enum": [
          "PDF"
        ],
        "type": "string"
      },
      "FileUploadResultDto": {
        "required": [
          "fileId",
          "fileName",
          "isSlideDeck",
          "parsingErrorCode",
          "parsingSucceeded",
          "skippedCount",
          "status"
        ],
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/ScriptAssistantFileStatus"
          },
          "parsingSucceeded": {
            "type": "boolean",
            "description": "Derived from WeAreLearning.R2D2.Api.DTO.ScriptAssistant.FileUploadResultDto.Status for one release. The API and the client deploy\r\nseparately, so removing this before the client stops reading it makes every upload\r\nlook failed. Delete once the client is out — tracked as a follow-up.",
            "readOnly": true,
            "deprecated": true
          },
          "parsingErrorCode": {
            "$ref": "#/components/schemas/ScriptAssistantParsingErrorCode"
          },
          "skippedCount": {
            "type": "integer",
            "description": "Pages or slides that could not be read and were skipped. Greater than zero means the\r\nextraction succeeded but is incomplete, so clients can warn the user.",
            "format": "int32"
          },
          "extractedTextPreview": {
            "type": "string",
            "nullable": true
          },
          "isSlideDeck": {
            "type": "boolean",
            "description": "Whether this upload classified as a slide deck."
          },
          "slideCount": {
            "type": "integer",
            "description": "Nullable and advisory. Known for parse-backed OpenXML decks and a successfully-parsed\r\n`.pdf`; null — never zero — for conversion-backed formats and anything else not yet\r\nknown, since nothing reads those before LibreOffice conversion runs. For a deck it counts the\r\nslides that will render, so hidden slides are excluded.",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FlashcardBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "back",
              "front"
            ],
            "type": "object",
            "properties": {
              "aspectRatio": {
                "type": "string",
                "nullable": true
              },
              "radius": {
                "type": "string",
                "nullable": true
              },
              "front": {
                "$ref": "#/components/schemas/FlashcardSideDto"
              },
              "back": {
                "$ref": "#/components/schemas/FlashcardSideDto"
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "FlashcardSideBackgroundDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "color": {
            "type": "string",
            "nullable": true
          },
          "fromHex": {
            "type": "string",
            "nullable": true
          },
          "toHex": {
            "type": "string",
            "nullable": true
          },
          "angle": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "FlashcardSideDto": {
        "required": [
          "content"
        ],
        "type": "object",
        "properties": {
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "layout": {
            "type": "string",
            "nullable": true
          },
          "background": {
            "$ref": "#/components/schemas/FlashcardSideBackgroundDto"
          },
          "padding": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "split": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "nullable": true
          },
          "alt": {
            "type": "string",
            "nullable": true
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          },
          "media": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          }
        },
        "additionalProperties": { }
      },
      "FolderDto": {
        "required": [
          "breadcrumbs",
          "name",
          "simulations",
          "subfolders"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "subfolders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BasicFolderDto"
            }
          },
          "breadcrumbs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BreadcrumbDto"
            }
          },
          "simulations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DashboardSimulationDto"
            }
          },
          "lockInfo": {
            "$ref": "#/components/schemas/FolderLockDto"
          }
        },
        "additionalProperties": false
      },
      "FolderLockDto": {
        "required": [
          "canBypass",
          "inherited",
          "locked",
          "lockedBy",
          "lockedFolderId",
          "lockedFolderName"
        ],
        "type": "object",
        "properties": {
          "locked": {
            "type": "boolean"
          },
          "inherited": {
            "type": "boolean"
          },
          "lockedBy": {
            "type": "string"
          },
          "lockedFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "lockedFolderName": {
            "type": "string"
          },
          "canBypass": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "FontSource": {
        "enum": [
          "Google",
          "TenantUpload"
        ],
        "type": "string"
      },
      "FontTokenDto": {
        "required": [
          "source"
        ],
        "type": "object",
        "properties": {
          "googleFontFamily": {
            "type": "string",
            "nullable": true
          },
          "tenantFontId": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/FontSource"
          },
          "url": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Gender": {
        "enum": [
          "Female",
          "Male"
        ],
        "type": "string"
      },
      "GenerateAvatarVideoRequest": {
        "type": "object",
        "properties": {
          "sourceTab": {
            "$ref": "#/components/schemas/AiStudioSourceTab"
          }
        },
        "additionalProperties": false
      },
      "GenerateDialogueNodeTextDto": {
        "required": [
          "id",
          "position",
          "sourceNodeId",
          "sourceNodeType",
          "targetSpeakerIndex"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "sourceNodeId": {
            "type": "string"
          },
          "sourceNodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "targetSpeakerIndex": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "GenerateQuizFeedbackDto": {
        "required": [
          "interactionType"
        ],
        "type": "object",
        "properties": {
          "interactionType": {
            "$ref": "#/components/schemas/QuizFeedbackInteractionType"
          },
          "selectedAnswerIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            },
            "nullable": true
          },
          "orderedAnswerIds": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "languageCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GenerateResponseNodeTextDto": {
        "required": [
          "id",
          "position",
          "sceneBackground",
          "sourceNodeId",
          "sourceNodeType",
          "targetSpeakerIndex",
          "voiceoverEnabled"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "sourceNodeId": {
            "type": "string"
          },
          "sourceNodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "sceneBackground": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "voiceoverEnabled": {
            "type": "boolean"
          },
          "targetSpeakerIndex": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "GenerateSessionTtsAudioRequest": {
        "required": [
          "voiceShortName"
        ],
        "type": "object",
        "properties": {
          "voiceShortName": {
            "type": "string"
          },
          "text": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GenerateStoryScriptRequestDto": {
        "required": [
          "languageCode",
          "storyDescription"
        ],
        "type": "object",
        "properties": {
          "storyDescription": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpsertSimulationCharacterDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GenerateTextToSpeechDto": {
        "required": [
          "audioOutputFormat",
          "gender",
          "locale",
          "nodeId",
          "simulationId",
          "text",
          "voiceName"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "gender": {
            "type": "string"
          },
          "voiceName": {
            "type": "string"
          },
          "audioOutputFormat": {
            "type": "string"
          },
          "outputContentType": {
            "$ref": "#/components/schemas/TtsAudioContentType"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "GenerateTextToSpeechSsmlDto": {
        "required": [
          "audioOutputFormat",
          "nodeId",
          "simulationId",
          "ssml"
        ],
        "type": "object",
        "properties": {
          "ssml": {
            "type": "string"
          },
          "audioOutputFormat": {
            "type": "string"
          },
          "outputContentType": {
            "$ref": "#/components/schemas/TtsAudioContentType"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "GestureDto": {
        "required": [
          "animationId",
          "endTime",
          "energyLevel",
          "lookDirectionAmount",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "animationId": {
            "type": "string"
          },
          "startTime": {
            "type": "number",
            "format": "double"
          },
          "endTime": {
            "type": "number",
            "format": "double"
          },
          "energyLevel": {
            "type": "integer",
            "format": "int32"
          },
          "animationSpeed": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "lookDirectionId": {
            "type": "string",
            "nullable": true
          },
          "lookDirectionAmount": {
            "type": "number",
            "format": "double"
          },
          "lookDirectionCharacterId": {
            "type": "string",
            "nullable": true
          },
          "lookDirection": {
            "$ref": "#/components/schemas/LookDirectionDto"
          },
          "emotionId": {
            "type": "string",
            "nullable": true
          },
          "propSettings": {
            "$ref": "#/components/schemas/PropSettingsDto"
          }
        },
        "additionalProperties": false
      },
      "Gradient": {
        "enum": [
          "Gradient_1",
          "Gradient_2",
          "Gradient_3",
          "Gradient_4",
          "Gradient_5"
        ],
        "type": "string"
      },
      "GradientDto": {
        "enum": [
          "gradient_1",
          "gradient_2",
          "gradient_3",
          "gradient_4",
          "gradient_5"
        ],
        "type": "string"
      },
      "GuidelinesDto": {
        "required": [
          "isComplete"
        ],
        "type": "object",
        "properties": {
          "topicAndRawContent": {
            "type": "string",
            "nullable": true
          },
          "learningGoals": {
            "type": "string",
            "nullable": true
          },
          "targetPersonas": {
            "type": "string",
            "nullable": true
          },
          "personas": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PersonaDto"
            },
            "nullable": true
          },
          "learningApproach": {
            "type": "string",
            "nullable": true
          },
          "courseLength": {
            "type": "string",
            "nullable": true
          },
          "targetDurationMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isComplete": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "HotspotHintDto": {
        "required": [
          "enabled",
          "hint",
          "openOnLoad"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "hint": {
            "type": "string"
          },
          "openOnLoad": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "HotspotNodeDto": {
        "required": [
          "autoContinue",
          "checkmarkSize",
          "hint",
          "id",
          "label",
          "mandatoryCompletion",
          "nodeType",
          "popupAnimation",
          "popupAnimationDirection",
          "popupAnimationSpeed",
          "popupPlacement",
          "position",
          "sceneBackground",
          "sequenceMode",
          "showFullscreen",
          "showHotspots",
          "showVisitedHotspots",
          "simulationId",
          "spots",
          "trigger"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ],
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "label": {
            "type": "string"
          },
          "sceneBackground": {
            "type": "string"
          },
          "spots": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpotDto"
            }
          },
          "showHotspots": {
            "type": "boolean"
          },
          "mandatoryCompletion": {
            "type": "boolean"
          },
          "showVisitedHotspots": {
            "type": "boolean"
          },
          "showFullscreen": {
            "type": "boolean"
          },
          "sequenceMode": {
            "type": "boolean"
          },
          "autoContinue": {
            "type": "boolean"
          },
          "popupPlacement": {
            "$ref": "#/components/schemas/PopupPlacementDto"
          },
          "popupAnimation": {
            "$ref": "#/components/schemas/PopupAnimationDto"
          },
          "popupAnimationDirection": {
            "$ref": "#/components/schemas/PopupAnimationDirectionDto"
          },
          "popupAnimationSpeed": {
            "$ref": "#/components/schemas/PopupAnimationSpeedDto"
          },
          "checkmarkSize": {
            "$ref": "#/components/schemas/CheckmarkSizeDto"
          },
          "backgroundImage": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "background": {
            "$ref": "#/components/schemas/QuizBackgroundDto"
          },
          "trigger": {
            "$ref": "#/components/schemas/TriggerDto"
          },
          "hint": {
            "$ref": "#/components/schemas/HotspotHintDto"
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "IdentifiableColorDto": {
        "required": [
          "color",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "color": {
            "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$",
            "type": "string",
            "description": "A valid hex color string (e.g., #FFF, #FFFFFF, #FFFFFFFF)"
          }
        },
        "additionalProperties": false
      },
      "IdleDto": {
        "required": [
          "animationId",
          "endTime",
          "lookDirectionAmount",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "animationId": {
            "type": "string"
          },
          "startTime": {
            "type": "number",
            "format": "double"
          },
          "endTime": {
            "type": "number",
            "format": "double"
          },
          "startPhase01": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lookDirectionId": {
            "type": "string",
            "nullable": true
          },
          "lookDirectionAmount": {
            "type": "number",
            "format": "double"
          },
          "lookDirectionCharacterId": {
            "type": "string",
            "nullable": true
          },
          "lookDirection": {
            "$ref": "#/components/schemas/LookDirectionDto"
          },
          "emotionId": {
            "type": "string",
            "nullable": true
          },
          "propSettings": {
            "$ref": "#/components/schemas/PropSettingsDto"
          }
        },
        "additionalProperties": false
      },
      "ImageComparisonBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "after",
              "before"
            ],
            "type": "object",
            "properties": {
              "before": {
                "$ref": "#/components/schemas/ComparisonImageDto"
              },
              "after": {
                "$ref": "#/components/schemas/ComparisonImageDto"
              },
              "initialPosition": {
                "type": "number",
                "format": "double",
                "nullable": true
              },
              "aspectRatio": {
                "type": "string",
                "nullable": true
              },
              "radius": {
                "type": "string",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "ImageMetadataDto": {
        "required": [
          "type",
          "versions"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/MetadataDto"
          }
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/MetadataAssetTypeDto"
          },
          "width": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "height": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "versions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImageVersionDto"
            },
            "deprecated": true
          },
          "size": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ImageScaleDto": {
        "required": [
          "x",
          "y"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "ImageTransformationDto": {
        "required": [
          "imageScale",
          "imageTranslation",
          "maskDimensions",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "imageTranslation": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "imageScale": {
            "$ref": "#/components/schemas/ImageScaleDto"
          },
          "rotation": {
            "type": "number",
            "format": "double"
          },
          "maskDimensions": {
            "$ref": "#/components/schemas/MaskDimensionsDto"
          }
        },
        "additionalProperties": false
      },
      "ImageVersionDto": {
        "required": [
          "imageVersionType",
          "metadata",
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "metadata": {
            "$ref": "#/components/schemas/ImageVersionMetadataDto"
          },
          "imageVersionType": {
            "$ref": "#/components/schemas/ImageVersionTypeDto"
          }
        },
        "additionalProperties": false
      },
      "ImageVersionMetadataDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/MetadataDto"
          }
        ],
        "properties": {
          "type": {
            "$ref": "#/components/schemas/MetadataAssetTypeDto"
          },
          "width": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "height": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "size": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ImageVersionTypeDto": {
        "enum": [
          "Original",
          "Desktop",
          "Mobile",
          "Thumbnail"
        ],
        "type": "string"
      },
      "ImportCompatibilityDto": {
        "required": [
          "blockingReasons",
          "canImport"
        ],
        "type": "object",
        "properties": {
          "canImport": {
            "type": "boolean"
          },
          "blockingReasons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "ImportExportProgressDto": {
        "required": [
          "operationId",
          "operationType",
          "status"
        ],
        "type": "object",
        "properties": {
          "operationId": {
            "type": "string"
          },
          "operationType": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "simulationId": {
            "type": "string",
            "nullable": true
          },
          "errorMessage": {
            "type": "string",
            "nullable": true
          },
          "errorCode": {
            "type": "string",
            "nullable": true
          },
          "failedSourceCharacterIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ImportStoryRequestDto": {
        "required": [
          "activateSourceLanguageSlot",
          "characterMappings",
          "characterVoiceMappings",
          "importToken",
          "targetLanguageCode"
        ],
        "type": "object",
        "properties": {
          "importToken": {
            "type": "string"
          },
          "characterMappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "characterVoiceMappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "targetLanguageCode": {
            "type": "string"
          },
          "activateSourceLanguageSlot": {
            "type": "boolean"
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntegrationStoryUsageDto": {
        "required": [
          "characters",
          "isLocked",
          "storyId",
          "storyStatus",
          "storyTitle"
        ],
        "type": "object",
        "properties": {
          "storyId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "storyTitle": {
            "type": "string"
          },
          "storyStatus": {
            "$ref": "#/components/schemas/SimulationStatusDto"
          },
          "isLocked": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "string",
            "nullable": true
          },
          "sceneImage": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryUsageCharacterDto"
            }
          }
        },
        "additionalProperties": false
      },
      "IntentResponseDto": {
        "required": [
          "nextNodeId"
        ],
        "type": "object",
        "properties": {
          "nextNodeId": {
            "type": "string"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "audioBase64": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntentTypeDto": {
        "enum": [
          "Text",
          "Audio"
        ],
        "type": "string"
      },
      "InviteUserDto": {
        "required": [
          "email",
          "role"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "role": {
            "$ref": "#/components/schemas/RoleDto"
          }
        },
        "additionalProperties": false
      },
      "InvoiceDto": {
        "required": [
          "additionalUsageAmount",
          "amount",
          "date",
          "description",
          "externalUrl",
          "status"
        ],
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "description": {
            "type": "string"
          },
          "additionalUsageAmount": {
            "type": "number",
            "format": "double"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "$ref": "#/components/schemas/InvoicePaymentStatus"
          },
          "externalUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "InvoiceDtoV2": {
        "required": [
          "addonsAmount",
          "amount",
          "date",
          "description",
          "externalUrl",
          "status"
        ],
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "format": "date-time"
          },
          "description": {
            "type": "string"
          },
          "addonsAmount": {
            "type": "number",
            "format": "double"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "$ref": "#/components/schemas/InvoiceStatus"
          },
          "externalUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "InvoiceLineDto": {
        "required": [
          "amount",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "amount": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "InvoicePaymentStatus": {
        "enum": [
          "Paid",
          "Open",
          "Draft"
        ],
        "type": "string"
      },
      "InvoiceStatus": {
        "enum": [
          "Paid",
          "Unpaid"
        ],
        "type": "string"
      },
      "LanguageAnalysisDto": {
        "required": [
          "availableTargetLanguageCodes",
          "canActivateSourceLanguage",
          "languageSlotsAvailable",
          "mode",
          "sourceLanguageCode"
        ],
        "type": "object",
        "properties": {
          "sourceLanguageCode": {
            "type": "string"
          },
          "mode": {
            "$ref": "#/components/schemas/LanguageImportMode"
          },
          "availableTargetLanguageCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "canActivateSourceLanguage": {
            "type": "boolean"
          },
          "languageSlotsAvailable": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "LanguageDto": {
        "required": [
          "code",
          "label"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "code": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "LanguageImportMode": {
        "enum": [
          "KeepSource",
          "ChooseTarget",
          "MustChooseOrActivate",
          "MustTranslate",
          "Blocked"
        ],
        "type": "string"
      },
      "LinkTokenDto": {
        "required": [
          "inviteToken"
        ],
        "type": "object",
        "properties": {
          "inviteToken": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "LocationDto": {
        "required": [
          "ambienceVolume",
          "ambientSound",
          "background",
          "guid",
          "id",
          "image",
          "indoorLighting",
          "name",
          "sceneBackground",
          "sceneCrop",
          "tags",
          "timeOfDay",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "guid": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "timeOfDay": {
            "type": "number",
            "format": "float"
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "ambientSound": {
            "type": "string"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "background": {
            "$ref": "#/components/schemas/BackgroundDto"
          },
          "image": {
            "type": "string",
            "deprecated": true
          },
          "sceneBackground": {
            "type": "string",
            "deprecated": true
          },
          "sceneCrop": {
            "$ref": "#/components/schemas/MarginDto"
          },
          "title": {
            "type": "string",
            "deprecated": true
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "hidden": {
            "type": "boolean",
            "nullable": true
          },
          "isDeleted": {
            "type": "boolean",
            "nullable": true
          },
          "locked": {
            "type": "boolean",
            "nullable": true
          },
          "global": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LockAllMenuPointsDto": {
        "required": [
          "locked"
        ],
        "type": "object",
        "properties": {
          "locked": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "LockReason": {
        "required": [
          "reason"
        ],
        "type": "object",
        "properties": {
          "reason": {
            "$ref": "#/components/schemas/LockReasonEnum"
          }
        },
        "additionalProperties": false
      },
      "LockReasonDto": {
        "type": "object",
        "properties": {
          "reason": {
            "$ref": "#/components/schemas/LockReasonEnumDto"
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LockReasonEnum": {
        "enum": [
          "LockedByUser",
          "InTranslation"
        ],
        "type": "string"
      },
      "LockReasonEnumDto": {
        "enum": [
          "Editing",
          "InTranslation"
        ],
        "type": "string"
      },
      "LookDirectionDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "horizontal": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "vertical": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "characterId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MarginDto": {
        "type": "object",
        "properties": {
          "top": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "right": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "bottom": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "left": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MaskDimensionsDto": {
        "required": [
          "height",
          "width"
        ],
        "type": "object",
        "properties": {
          "width": {
            "type": "number",
            "format": "double"
          },
          "height": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "MaterialDto": {
        "required": [
          "color",
          "texture"
        ],
        "type": "object",
        "properties": {
          "texture": {
            "type": "integer",
            "format": "int32",
            "deprecated": true
          },
          "color": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "customTextureGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "textureGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "materialPath": {
            "type": "string",
            "nullable": true
          },
          "customTextureUV": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MaterialOverrideDto": {
        "required": [
          "id",
          "materialIndex",
          "renderer"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "renderer": {
            "type": "string"
          },
          "materialIndex": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "MediaAnimation": {
        "required": [
          "transition",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/MediaTransitionType"
          },
          "transition": {
            "$ref": "#/components/schemas/MediaTransition"
          },
          "direction": {
            "$ref": "#/components/schemas/MediaTransitionDirection"
          }
        },
        "additionalProperties": false
      },
      "MediaBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "alt",
              "src"
            ],
            "type": "object",
            "properties": {
              "src": {
                "type": "string"
              },
              "alt": {
                "type": "string"
              },
              "mediaType": {
                "type": "string",
                "nullable": true
              },
              "caption": {
                "type": "string",
                "nullable": true
              },
              "objectFit": {
                "type": "string",
                "nullable": true
              },
              "aspectRatio": {
                "type": "string",
                "nullable": true
              },
              "mediaReferenceId": {
                "type": "string",
                "nullable": true
              },
              "isDecorative": {
                "type": "boolean",
                "nullable": true
              },
              "imageTransformation": {
                "$ref": "#/components/schemas/ImageTransformationDto"
              },
              "radius": {
                "type": "string",
                "nullable": true
              },
              "autoplay": {
                "type": "boolean",
                "nullable": true
              },
              "loop": {
                "type": "boolean",
                "nullable": true
              },
              "muted": {
                "type": "boolean",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "MediaClipDto": {
        "required": [
          "endTime",
          "fileName",
          "id",
          "position",
          "sceneBackgroundDimness",
          "size",
          "startTime",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "startTime": {
            "type": "number",
            "format": "float"
          },
          "endTime": {
            "type": "number",
            "format": "float"
          },
          "url": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDtoWithOptionalZValue"
          },
          "size": {
            "type": "integer",
            "format": "int32"
          },
          "opacity": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "rotation": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "transition": {
            "$ref": "#/components/schemas/MediaTransition"
          },
          "animations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MediaAnimation"
            },
            "nullable": true
          },
          "positionDepth": {
            "$ref": "#/components/schemas/MediaDepthPosition"
          },
          "sceneBackgroundDimness": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "MediaDepthPosition": {
        "enum": [
          "Back",
          "Front"
        ],
        "type": "string"
      },
      "MediaFolderBreadcrumbDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "parentId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MediaFolderDetailDto": {
        "required": [
          "breadcrumbs",
          "name",
          "subfolders"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "subfolders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BasicMediaFolderDto"
            }
          },
          "breadcrumbs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MediaFolderBreadcrumbDto"
            }
          }
        },
        "additionalProperties": false
      },
      "MediaFolderDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "parentFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MediaReferenceDto": {
        "required": [
          "contentType",
          "createdAt",
          "extension",
          "fileName",
          "id",
          "metadata",
          "publicUrl",
          "thumbnailUrl",
          "updatedAt",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "extension": {
            "type": "string"
          },
          "contentType": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "deprecated": true
          },
          "publicUrl": {
            "type": "string"
          },
          "thumbnailUrl": {
            "type": "string",
            "deprecated": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "metadata": {
            "$ref": "#/components/schemas/MetadataDto"
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MediaReferenceDtoPaginatedDto": {
        "required": [
          "count",
          "data",
          "pageSize"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MediaReferenceDto"
            }
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "continuationToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MediaReferenceSortBy": {
        "enum": [
          "FileName",
          "CreatedAt",
          "UpdatedAt"
        ],
        "type": "string"
      },
      "MediaReferenceUsageDto": {
        "required": [
          "nodeIds",
          "nodes"
        ],
        "type": "object",
        "properties": {
          "nodes": {
            "type": "integer",
            "format": "int32"
          },
          "nodeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "MediaTrackDto": {
        "required": [
          "id",
          "mediaClipIds"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "mediaClipIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "MediaTransition": {
        "enum": [
          "Fade",
          "Instant",
          "Move",
          "Pop",
          "Drop"
        ],
        "type": "string"
      },
      "MediaTransitionDirection": {
        "enum": [
          "Top",
          "Right",
          "Bottom",
          "Left"
        ],
        "type": "string"
      },
      "MediaTransitionType": {
        "enum": [
          "Start",
          "End"
        ],
        "type": "string"
      },
      "MenuPointDto": {
        "required": [
          "id",
          "index",
          "label",
          "locked",
          "nodeId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          },
          "index": {
            "type": "integer",
            "format": "int32"
          },
          "locked": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "MenuPointSortItem": {
        "required": [
          "id",
          "index"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "index": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Message": {
        "required": [
          "content",
          "role"
        ],
        "type": "object",
        "properties": {
          "role": {
            "type": "string"
          },
          "content": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "MetadataAssetTypeDto": {
        "enum": [
          "Image",
          "ImageVersion",
          "Video",
          "Audio",
          "Document"
        ],
        "type": "string"
      },
      "MetadataDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/MetadataAssetTypeDto"
          },
          "size": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "image": "#/components/schemas/ImageMetadataDto",
            "video": "#/components/schemas/VideoMetadataDto",
            "audio": "#/components/schemas/AudioMetadataDto",
            "document": "#/components/schemas/DocumentMetadataDto",
            "imageVersion": "#/components/schemas/ImageVersionMetadataDto"
          }
        }
      },
      "MoveAiStudioFolderDto": {
        "required": [
          "folderId"
        ],
        "type": "object",
        "properties": {
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "targetId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MoveAiStudioSessionRequest": {
        "type": "object",
        "properties": {
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MoveBlockDto": {
        "required": [
          "targetColumnId",
          "targetIndex",
          "targetPageId",
          "targetSectionId"
        ],
        "type": "object",
        "properties": {
          "targetPageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "targetSectionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "targetColumnId": {
            "type": "string"
          },
          "targetIndex": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "MoveFolderDto": {
        "required": [
          "folderId"
        ],
        "type": "object",
        "properties": {
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "targetId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MoveMediaFolderDto": {
        "required": [
          "targetFolderId"
        ],
        "type": "object",
        "properties": {
          "targetFolderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "MoveMediaReferenceToFolderDto": {
        "required": [
          "mediaReferenceIds"
        ],
        "type": "object",
        "properties": {
          "mediaReferenceIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "folderId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NBest": {
        "required": [
          "confidence",
          "display",
          "itn",
          "lexical",
          "maskedITN"
        ],
        "type": "object",
        "properties": {
          "confidence": {
            "type": "number",
            "format": "double"
          },
          "display": {
            "type": "string"
          },
          "itn": {
            "type": "string"
          },
          "lexical": {
            "type": "string"
          },
          "maskedITN": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "NavigationTypeDto": {
        "enum": [
          "Url",
          "Node"
        ],
        "type": "string"
      },
      "NoMatchNodeDto": {
        "required": [
          "consequences",
          "id",
          "label",
          "nodeType",
          "position",
          "retryCount",
          "simulationId"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ],
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "label": {
            "type": "string"
          },
          "retryCount": {
            "type": "integer",
            "format": "int32"
          },
          "consequences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsequenceDto"
            }
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "NodeAudioDto": {
        "required": [
          "ambienceVolume",
          "isVoiceMimicEnabled",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/AudioTypeDto"
          },
          "uploadedAudioGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true,
            "deprecated": true
          },
          "voiceMimicAudioGuid": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true,
            "deprecated": true
          },
          "uploadedAudioUrl": {
            "type": "string",
            "nullable": true
          },
          "textToSpeechAudioUrl": {
            "type": "string",
            "nullable": true
          },
          "voiceMimicAudioUrl": {
            "type": "string",
            "nullable": true
          },
          "isVoiceMimicEnabled": {
            "type": "boolean"
          },
          "volume": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "metadata": {
            "$ref": "#/components/schemas/NodeAudioMetadataDto"
          }
        },
        "additionalProperties": false
      },
      "NodeAudioMetadataDto": {
        "type": "object",
        "properties": {
          "uploadedLipSyncData": {
            "$ref": "#/components/schemas/AudioLipSyncDataDto"
          },
          "textToSpeechLipSyncData": {
            "$ref": "#/components/schemas/AudioLipSyncDataDto"
          },
          "voiceMimicLipSyncData": {
            "$ref": "#/components/schemas/AudioLipSyncDataDto"
          },
          "uploadedAudioDuration": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "textToSpeechAudioDuration": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "voiceMimicAudioDuration": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NodeCharacterDto": {
        "required": [
          "id",
          "pose",
          "position",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          },
          "pose": {
            "$ref": "#/components/schemas/CharacterPoseDto"
          },
          "dialogueNodeOverrides": {
            "$ref": "#/components/schemas/DialogueNodeCharacterOverridesDto"
          }
        },
        "additionalProperties": false
      },
      "NodeContinueButtonDto": {
        "required": [
          "buttonColor",
          "text",
          "textColor"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "buttonColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "textColor": {
            "$ref": "#/components/schemas/ColorValue"
          }
        },
        "additionalProperties": false
      },
      "NodeDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          },
          {
            "required": [
              "audioGuid",
              "audioTimelineStartTime",
              "audioType",
              "audioVolume",
              "autoContinue",
              "camera",
              "characterPresenter",
              "checkmarkSize",
              "color",
              "consequences",
              "darkTheme",
              "label",
              "mandatoryCompletion",
              "popupAnimation",
              "popupAnimationDirection",
              "popupAnimationSpeed",
              "popupPlacement",
              "posterNodeParameters",
              "questions",
              "questionTextColor",
              "randomizeOrder",
              "randomResponseOrder",
              "results",
              "retryCount",
              "sceneBackground",
              "sequenceMode",
              "shouldDoAiRephrase",
              "showFullscreen",
              "showHotspots",
              "showResultsAfterAnswer",
              "showVisitedHotspots",
              "speakerIndex",
              "text",
              "timelineDuration",
              "vector",
              "voiceoverEnabled"
            ],
            "type": "object",
            "properties": {
              "label": {
                "type": "string"
              },
              "text": {
                "type": "string"
              },
              "displayText": {
                "type": "string",
                "nullable": true
              },
              "color": {
                "type": "string"
              },
              "eventId": {
                "type": "string",
                "nullable": true
              },
              "speakerIndex": {
                "type": "string"
              },
              "speakerId": {
                "type": "string",
                "nullable": true
              },
              "timelineDuration": {
                "type": "number",
                "format": "float"
              },
              "audioTimelineStartTime": {
                "type": "number",
                "format": "double"
              },
              "audioType": {
                "$ref": "#/components/schemas/AudioTypeDto"
              },
              "audioGuid": {
                "type": "string",
                "deprecated": true
              },
              "sceneBackground": {
                "type": "string"
              },
              "shouldDoAiRephrase": {
                "type": "boolean"
              },
              "selectedSceneId": {
                "type": "string",
                "nullable": true
              },
              "consequences": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ConsequenceDto"
                }
              },
              "voiceoverEnabled": {
                "type": "boolean"
              },
              "randomResponseOrder": {
                "type": "boolean"
              },
              "ambienceVolume": {
                "type": "number",
                "format": "float",
                "nullable": true,
                "deprecated": true
              },
              "isSuccess": {
                "type": "boolean",
                "nullable": true
              },
              "displayPosterIcon": {
                "type": "boolean",
                "nullable": true
              },
              "camera": {
                "$ref": "#/components/schemas/CameraDto"
              },
              "references": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "nullable": true
              },
              "sequence": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EventSequenceItemDto"
                },
                "nullable": true
              },
              "characters": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/NodeCharacterDto"
                },
                "nullable": true
              },
              "location": {
                "type": "string",
                "nullable": true
              },
              "timeOfDay": {
                "type": "number",
                "format": "float",
                "nullable": true
              },
              "indoorLighting": {
                "$ref": "#/components/schemas/ColorDto"
              },
              "audioVolume": {
                "type": "number",
                "format": "float",
                "deprecated": true
              },
              "speakingStyles": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CharacterSpeakingStyleDto"
                },
                "nullable": true
              },
              "posterNodeParameters": {
                "$ref": "#/components/schemas/PosterNodeParametersDto"
              },
              "mediaClips": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaClipDto"
                },
                "nullable": true
              },
              "mediaTracks": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaTrackDto"
                },
                "nullable": true
              },
              "mediaReferences": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/MediaReferenceDto"
                },
                "nullable": true
              },
              "dialogueNodeOverrides": {
                "$ref": "#/components/schemas/DialogueNodeOverridesDto"
              },
              "audio": {
                "$ref": "#/components/schemas/NodeAudioDto"
              },
              "vector": {
                "type": "array",
                "items": {
                  "type": "number",
                  "format": "float"
                }
              },
              "spots": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/SpotDto"
                },
                "nullable": true
              },
              "showHotspots": {
                "type": "boolean"
              },
              "mandatoryCompletion": {
                "type": "boolean"
              },
              "showVisitedHotspots": {
                "type": "boolean"
              },
              "showFullscreen": {
                "type": "boolean"
              },
              "sequenceMode": {
                "type": "boolean"
              },
              "autoContinue": {
                "type": "boolean"
              },
              "popupPlacement": {
                "$ref": "#/components/schemas/PopupPlacementDto"
              },
              "popupAnimation": {
                "$ref": "#/components/schemas/PopupAnimationDto"
              },
              "popupAnimationDirection": {
                "$ref": "#/components/schemas/PopupAnimationDirectionDto"
              },
              "popupAnimationSpeed": {
                "$ref": "#/components/schemas/PopupAnimationSpeedDto"
              },
              "checkmarkSize": {
                "$ref": "#/components/schemas/CheckmarkSizeDto"
              },
              "backgroundImage": {
                "$ref": "#/components/schemas/MediaReferenceDto"
              },
              "trigger": {
                "$ref": "#/components/schemas/TriggerDto"
              },
              "hint": {
                "$ref": "#/components/schemas/HotspotHintDto"
              },
              "actsLike": {
                "type": "string",
                "nullable": true
              },
              "visualHint": {
                "$ref": "#/components/schemas/VisualIntentHintDto"
              },
              "minimumMatchThreshold": {
                "type": "integer",
                "format": "int32",
                "nullable": true
              },
              "retryCount": {
                "type": "integer",
                "format": "int32"
              },
              "background": {
                "$ref": "#/components/schemas/QuizBackgroundDto"
              },
              "questions": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/QuizQuestionDto"
                }
              },
              "randomizeOrder": {
                "type": "boolean"
              },
              "showResultsAfterAnswer": {
                "type": "boolean"
              },
              "results": {
                "$ref": "#/components/schemas/QuizResultsDto"
              },
              "darkTheme": {
                "type": "boolean"
              },
              "questionTextColor": {
                "$ref": "#/components/schemas/ColorValue"
              },
              "subsetQuestionCount": {
                "type": "integer",
                "format": "int32",
                "nullable": true
              },
              "characterPresenter": {
                "$ref": "#/components/schemas/QuizCharacterPresenterDto"
              },
              "themeOverride": {
                "$ref": "#/components/schemas/NodeThemeOverrideDto"
              },
              "pages": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PageDto"
                },
                "nullable": true
              },
              "htmlUrl": {
                "type": "string",
                "nullable": true
              },
              "fileName": {
                "type": "string",
                "nullable": true
              },
              "continueButton": {
                "$ref": "#/components/schemas/NodeContinueButtonDto"
              },
              "images": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CodeNodeImageDto"
                },
                "nullable": true
              }
            },
            "additionalProperties": false
          },
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ]
      },
      "NodeEventMappingDto": {
        "required": [
          "eventId",
          "nodeId"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "eventId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "NodeSceneAnalysisDto": {
        "required": [
          "isAvailableInTargetTenant",
          "nodeId",
          "sceneId"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "sceneId": {
            "type": "string"
          },
          "isAvailableInTargetTenant": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "NodeThemeOverrideAnalysisDto": {
        "required": [
          "isAvailableInTargetTenant",
          "nodeId",
          "themeId"
        ],
        "type": "object",
        "properties": {
          "nodeId": {
            "type": "string"
          },
          "themeId": {
            "type": "string"
          },
          "isAvailableInTargetTenant": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "NodeThemeOverrideDto": {
        "type": "object",
        "properties": {
          "themeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NodeTypeDto": {
        "enum": [
          "dialogue",
          "response",
          "poster",
          "event",
          "end",
          "open-response",
          "outcome",
          "no-match",
          "hotspot",
          "quiz",
          "page",
          "code"
        ],
        "type": "string"
      },
      "OembedFormat": {
        "enum": [
          "json",
          "xml"
        ],
        "type": "string"
      },
      "OembedResponse": {
        "required": [
          "height",
          "provider_name",
          "provider_url",
          "type",
          "version",
          "width"
        ],
        "type": "object",
        "properties": {
          "version": {
            "type": "string"
          },
          "provider_name": {
            "type": "string"
          },
          "provider_url": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "author_name": {
            "type": "string",
            "nullable": true
          },
          "author_url": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/OembedType"
          },
          "height": {
            "type": "integer",
            "format": "int32"
          },
          "width": {
            "type": "integer",
            "format": "int32"
          },
          "cache_age": {
            "type": "string",
            "nullable": true
          },
          "thumbnail_url": {
            "type": "string",
            "nullable": true
          },
          "thumbnail_width": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "thumbnail_height": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "referrer": {
            "type": "string",
            "nullable": true
          },
          "html": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OembedType": {
        "enum": [
          "rich"
        ],
        "type": "string"
      },
      "OpenResponseNodeDto": {
        "required": [
          "actsLike",
          "id",
          "label",
          "nodeType",
          "position",
          "simulationId",
          "visualHint"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ],
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "label": {
            "type": "string"
          },
          "actsLike": {
            "type": "string"
          },
          "visualHint": {
            "$ref": "#/components/schemas/VisualIntentHintDto"
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "OptionDto": {
        "required": [
          "id",
          "text"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "text": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "OutcomeNodeDto": {
        "required": [
          "consequences",
          "id",
          "label",
          "nodeType",
          "position",
          "simulationId",
          "text"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ],
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "label": {
            "type": "string"
          },
          "text": {
            "type": "string"
          },
          "minimumMatchThreshold": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "consequences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsequenceDto"
            }
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "OutlineBlockDto": {
        "required": [
          "kind"
        ],
        "type": "object",
        "properties": {
          "kind": {
            "type": "string"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "variant": {
            "type": "string",
            "nullable": true
          },
          "mediaKind": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OutlineDto": {
        "required": [
          "estimatedDurationMinutes",
          "id",
          "isComplete",
          "scenes",
          "skills",
          "title",
          "version"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "estimatedDurationMinutes": {
            "type": "integer",
            "format": "int32"
          },
          "scenes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineSceneDto"
            }
          },
          "skills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineSkillDto"
            }
          },
          "isComplete": {
            "type": "boolean"
          },
          "version": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "OutlineEdgeDto": {
        "required": [
          "id",
          "source",
          "sourceHandle",
          "target"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "target": {
            "type": "string"
          },
          "sourceHandle": {
            "type": "string"
          },
          "label": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OutlineNodeCharacterDto": {
        "required": [
          "id",
          "pose",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/OutlineThreeDimensionalPositionDto"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          },
          "pose": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "OutlineNodeDto": {
        "required": [
          "contentSketch",
          "hasDecisionPoint",
          "id",
          "nodeType",
          "purpose"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "nodeType": {
            "type": "string"
          },
          "purpose": {
            "type": "string"
          },
          "contentSketch": {
            "type": "string"
          },
          "speakerHint": {
            "type": "string",
            "nullable": true
          },
          "hasDecisionPoint": {
            "type": "boolean"
          },
          "outcomes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "pageData": {
            "$ref": "#/components/schemas/OutlinePageDataDto"
          }
        },
        "additionalProperties": false
      },
      "OutlinePageDataDto": {
        "required": [
          "pages"
        ],
        "type": "object",
        "properties": {
          "pages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlinePageDto"
            }
          }
        },
        "additionalProperties": false
      },
      "OutlinePageDto": {
        "required": [
          "sections",
          "title"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "sections": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineSectionDto"
            }
          }
        },
        "additionalProperties": false
      },
      "OutlineSceneDto": {
        "required": [
          "edges",
          "id",
          "learningObjective",
          "method",
          "nodes",
          "orderIndex",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "method": {
            "type": "string"
          },
          "learningObjective": {
            "type": "string"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineNodeDto"
            }
          },
          "edges": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineEdgeDto"
            }
          },
          "orderIndex": {
            "type": "integer",
            "format": "int32"
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineNodeCharacterDto"
            },
            "nullable": true
          },
          "thumbnailPath": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OutlineSectionDto": {
        "required": [
          "columns",
          "columnWidths",
          "layout"
        ],
        "type": "object",
        "properties": {
          "layout": {
            "type": "string"
          },
          "columnWidths": {
            "type": "array",
            "items": {
              "type": "number",
              "format": "double"
            }
          },
          "columns": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/OutlineBlockDto"
              }
            }
          }
        },
        "additionalProperties": false
      },
      "OutlineSkillDto": {
        "required": [
          "description",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "OutlineThreeDimensionalPositionDto": {
        "required": [
          "x",
          "y",
          "z"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          },
          "z": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "PageBlockContentDto": {
        "type": "object",
        "properties": {
          "minHeight": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "maxWidth": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "blockAlign": {
            "type": "string",
            "nullable": true
          },
          "surface": {
            "$ref": "#/components/schemas/PageBlockSurfaceDto"
          },
          "fillHeight": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "PageBlockDto": {
        "required": [
          "id",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "data": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/RichTextBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/MediaBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/ButtonBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/SpacerBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/DividerBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/CalloutBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/EmbedBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/FlashcardBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/ImageComparisonBlockContentDto"
              },
              {
                "$ref": "#/components/schemas/CarouselBlockContentDto"
              }
            ],
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PageBlockSurfaceDto": {
        "required": [
          "backgroundColor"
        ],
        "type": "object",
        "properties": {
          "backgroundColor": {
            "type": "string"
          },
          "padding": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "radius": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "PageDto": {
        "required": [
          "id",
          "name",
          "sections"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "themeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "sections": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PageSectionDto"
            }
          }
        },
        "additionalProperties": { }
      },
      "PageNodeDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          },
          {
            "required": [
              "label",
              "nodeType",
              "pages",
              "sceneBackground"
            ],
            "type": "object",
            "properties": {
              "nodeType": {
                "$ref": "#/components/schemas/NodeTypeDto"
              },
              "label": {
                "type": "string"
              },
              "sceneBackground": {
                "type": "string"
              },
              "pages": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PageDto"
                }
              }
            },
            "additionalProperties": false
          },
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ]
      },
      "PageSectionDto": {
        "required": [
          "background",
          "blockAlignment",
          "columnGap",
          "columns",
          "id",
          "padding"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "padding": {
            "type": "integer",
            "format": "int32"
          },
          "columnGap": {
            "type": "integer",
            "format": "int32"
          },
          "blockAlignment": {
            "type": "string"
          },
          "background": {
            "$ref": "#/components/schemas/SectionBackgroundDto"
          },
          "columns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SectionColumnDto"
            }
          }
        },
        "additionalProperties": false
      },
      "PageSelection": {
        "enum": [
          "All",
          "Range"
        ],
        "type": "string"
      },
      "PartnerStoryDto": {
        "required": [
          "id",
          "title",
          "updatedAt",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "thumbnail": {
            "type": "string",
            "nullable": true
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "PartnerStoryDtoPaginatedDto": {
        "required": [
          "count",
          "data",
          "pageSize"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PartnerStoryDto"
            }
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "continuationToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PaymentInfoDto": {
        "required": [
          "externalId"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "type": "string"
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string",
            "nullable": true
          },
          "region": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "orgNo": {
            "type": "string",
            "nullable": true
          },
          "last4Digits": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PaymentMethodDto": {
        "required": [
          "externalId",
          "last4Digits"
        ],
        "type": "object",
        "properties": {
          "externalId": {
            "type": "string"
          },
          "last4Digits": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "PersonaDto": {
        "required": [
          "description"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "imageReference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlanAddonDetailsDto": {
        "required": [
          "freeLimit",
          "isUnlimited"
        ],
        "type": "object",
        "properties": {
          "prices": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PriceDto"
            },
            "nullable": true
          },
          "freeLimit": {
            "type": "integer",
            "format": "int32"
          },
          "isUnlimited": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "PlanAddonDto": {
        "required": [
          "available",
          "canBuyExtras",
          "currentUsage",
          "extras",
          "isUnlimited",
          "nextBillingCycleExtras",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PlanAddonType"
          },
          "currentUsage": {
            "type": "integer",
            "format": "int32"
          },
          "available": {
            "type": "integer",
            "format": "int32"
          },
          "extras": {
            "type": "integer",
            "format": "int32"
          },
          "nextBillingCycleExtras": {
            "type": "integer",
            "format": "int32"
          },
          "isUnlimited": {
            "type": "boolean"
          },
          "canBuyExtras": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "PlanAddonType": {
        "enum": [
          "Creators",
          "PublishedStories",
          "Languages",
          "Characters"
        ],
        "type": "string"
      },
      "PlanDetailsDto": {
        "required": [
          "additionalFeatures",
          "additionalFeaturesTitle",
          "characters",
          "creators",
          "description",
          "includedFeatures",
          "languages",
          "prices",
          "publishedStories",
          "title"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "includedFeatures": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "additionalFeaturesTitle": {
            "type": "string"
          },
          "additionalFeatures": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "prices": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PriceDto"
            }
          },
          "creators": {
            "$ref": "#/components/schemas/PlanAddonDetailsDto"
          },
          "publishedStories": {
            "$ref": "#/components/schemas/PlanAddonDetailsDto"
          },
          "characters": {
            "$ref": "#/components/schemas/PlanAddonDetailsDto"
          },
          "languages": {
            "$ref": "#/components/schemas/PlanAddonDetailsDto"
          }
        },
        "additionalProperties": false
      },
      "PlanDto": {
        "required": [
          "billingPeriod",
          "name",
          "price"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriod"
          },
          "price": {
            "type": "number",
            "format": "double"
          },
          "creators": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "publishedSimulations": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "plays": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "languages": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlanDtoV2": {
        "required": [
          "addons",
          "planType"
        ],
        "type": "object",
        "properties": {
          "planType": {
            "$ref": "#/components/schemas/PlanType"
          },
          "addons": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PlanAddonDto"
            }
          }
        },
        "additionalProperties": false
      },
      "PlanOptionsDto": {
        "required": [
          "enterprise",
          "singleCreator",
          "smallBusiness"
        ],
        "type": "object",
        "properties": {
          "singleCreator": {
            "$ref": "#/components/schemas/PlanDetailsDto"
          },
          "smallBusiness": {
            "$ref": "#/components/schemas/PlanDetailsDto"
          },
          "enterprise": {
            "$ref": "#/components/schemas/PlanDetailsDto"
          }
        },
        "additionalProperties": false
      },
      "PlanType": {
        "enum": [
          "SingleCreator",
          "SmallBusiness",
          "Enterprise"
        ],
        "type": "string"
      },
      "Platform": {
        "enum": [
          "webgl",
          "ios",
          "android"
        ],
        "type": "string"
      },
      "PlayerClientEnvironmentDto": {
        "type": "object",
        "properties": {
          "deviceType": {
            "type": "string",
            "nullable": true
          },
          "userAgent": {
            "type": "string",
            "nullable": true
          },
          "browserName": {
            "type": "string",
            "nullable": true
          },
          "browserVersion": {
            "type": "string",
            "nullable": true
          },
          "operatingSystem": {
            "type": "string",
            "nullable": true
          },
          "screenWidth": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "screenHeight": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "pixelRatio": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "viewportWidth": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "viewportHeight": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "language": {
            "type": "string",
            "nullable": true
          },
          "timezoneOffsetMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "appVersion": {
            "type": "string",
            "nullable": true
          },
          "isTouchEnabled": {
            "type": "boolean",
            "nullable": true
          },
          "preferredContrastMode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PlayerEventTypeDto": {
        "enum": [
          "Started",
          "Completed",
          "QuizStarted",
          "QuizCompleted",
          "QuestionAnswered",
          "ResponseSelected"
        ],
        "type": "string"
      },
      "PlayerInputMode": {
        "enum": [
          "Speaking",
          "Typing"
        ],
        "type": "string"
      },
      "PlayerInputModeDto": {
        "enum": [
          "Speaking",
          "Typing"
        ],
        "type": "string"
      },
      "PopupAnimationDirectionDto": {
        "enum": [
          "Up",
          "Down",
          "Left",
          "Right"
        ],
        "type": "string"
      },
      "PopupAnimationDto": {
        "enum": [
          "Scale",
          "None",
          "Fade",
          "Pop",
          "Slide",
          "Bounce",
          "Flip"
        ],
        "type": "string"
      },
      "PopupAnimationSpeedDto": {
        "enum": [
          "Normal",
          "Fast",
          "Slow"
        ],
        "type": "string"
      },
      "PopupPlacementDto": {
        "enum": [
          "Relative",
          "Center"
        ],
        "type": "string"
      },
      "Position2dDto": {
        "required": [
          "x",
          "y"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "PosterBackgroundDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/BackgroundType"
          },
          "value": {
            "type": "string",
            "nullable": true
          },
          "backgroundImage": {
            "$ref": "#/components/schemas/PosterImageDto"
          },
          "fromHex": {
            "type": "string",
            "nullable": true
          },
          "toHex": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PosterImageDto": {
        "required": [
          "mediaReferenceId",
          "opacity",
          "position",
          "rotation",
          "scale",
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "deprecated": true
          },
          "thumbnailImageUrl": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "desktopImageUrl": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "mobileImageUrl": {
            "type": "string",
            "nullable": true,
            "deprecated": true
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "scale": {
            "$ref": "#/components/schemas/SingleSingleTuple"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          },
          "opacity": {
            "type": "number",
            "format": "float"
          },
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "mediaReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          }
        },
        "additionalProperties": false
      },
      "PosterMediaTypeDto": {
        "enum": [
          "Image",
          "Video"
        ],
        "type": "string"
      },
      "PosterNodeButtonDto": {
        "required": [
          "backgroundColor",
          "text",
          "textColor"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "textColor": {
            "type": "string"
          },
          "backgroundColor": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "PosterNodeIconDto": {
        "required": [
          "color",
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "color": {
            "type": "string"
          },
          "absoluteUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PosterNodeParametersDto": {
        "required": [
          "background",
          "button",
          "color",
          "displayPosterIcon",
          "images",
          "selectedMediaType",
          "selectedTemplate",
          "showFullscreen",
          "text",
          "textJson",
          "video"
        ],
        "type": "object",
        "properties": {
          "selectedTemplate": {
            "$ref": "#/components/schemas/TemplateType"
          },
          "displayPosterIcon": {
            "type": "boolean"
          },
          "color": {
            "type": "string"
          },
          "showFullscreen": {
            "type": "boolean"
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PosterImageDto"
            }
          },
          "button": {
            "$ref": "#/components/schemas/PosterNodeButtonDto"
          },
          "background": {
            "$ref": "#/components/schemas/PosterBackgroundDto"
          },
          "text": {
            "type": "string"
          },
          "textJson": {
            "type": "string"
          },
          "icon": {
            "$ref": "#/components/schemas/PosterNodeIconDto"
          },
          "selectedMediaType": {
            "$ref": "#/components/schemas/PosterMediaTypeDto"
          },
          "video": {
            "$ref": "#/components/schemas/PosterVideoDto"
          }
        },
        "additionalProperties": false
      },
      "PosterVideoDto": {
        "required": [
          "autoContinueOnEnd",
          "autoplay",
          "mandatoryPlaythrough",
          "videoType"
        ],
        "type": "object",
        "properties": {
          "mediaReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "externalVideoUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          },
          "videoType": {
            "$ref": "#/components/schemas/PosterVideoTypeDto"
          },
          "mandatoryPlaythrough": {
            "type": "boolean"
          },
          "autoplay": {
            "type": "boolean"
          },
          "autoContinueOnEnd": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "PosterVideoTypeDto": {
        "enum": [
          "None",
          "Embed",
          "Upload"
        ],
        "type": "string"
      },
      "PriceDto": {
        "required": [
          "amount",
          "billingPeriod",
          "currency"
        ],
        "type": "object",
        "properties": {
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "monthlyAmount": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PrioritizeNodeLipSyncDto": {
        "required": [
          "nodeIds"
        ],
        "type": "object",
        "properties": {
          "nodeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "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": { }
      },
      "PropSettingsDto": {
        "required": [
          "blendShapes",
          "colors",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "colors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdentifiableColorDto"
            }
          },
          "blendShapes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BlendShapeDto"
            }
          }
        },
        "additionalProperties": false
      },
      "PropertyDto": {
        "required": [
          "key",
          "value"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/PropertyValueDto"
          }
        },
        "additionalProperties": false
      },
      "PropertyValueDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PropertyValueType"
          }
        },
        "additionalProperties": false
      },
      "PropertyValueType": {
        "enum": [
          "Int",
          "Float",
          "Bool",
          "Range",
          "Color",
          "Vector4",
          "Vector3",
          "Vector2",
          "Texture"
        ],
        "type": "string"
      },
      "PurchaseAITopUpRequestDto": {
        "required": [
          "size"
        ],
        "type": "object",
        "properties": {
          "size": {
            "$ref": "#/components/schemas/AITopUpSize"
          }
        },
        "additionalProperties": false
      },
      "QuestionDto": {
        "required": [
          "id",
          "text",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "type": {
            "$ref": "#/components/schemas/QuestionTypeDto"
          },
          "text": {
            "type": "string"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OptionDto"
            },
            "nullable": true
          },
          "step": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "QuestionTypeDto": {
        "enum": [
          "Input",
          "SingleChoice",
          "MultipleChoice"
        ],
        "type": "string"
      },
      "QuestionnaireDto": {
        "required": [
          "questions"
        ],
        "type": "object",
        "properties": {
          "questions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QuestionDto"
            }
          },
          "answers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AnswerDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "QuizAnswerDto": {
        "required": [
          "id",
          "text"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "text": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "image": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          }
        },
        "additionalProperties": false
      },
      "QuizBackgroundDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/BackgroundType"
          },
          "value": {
            "type": "string",
            "nullable": true
          },
          "imageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "imageReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          },
          "fromHex": {
            "type": "string",
            "nullable": true
          },
          "toHex": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "QuizCharacterPresenterDto": {
        "required": [
          "enabled",
          "energyLevel",
          "voiceoverOnly"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "characterId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "energyLevel": {
            "type": "integer",
            "format": "int32"
          },
          "voiceoverOnly": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "QuizFeedbackAudioResponseDto": {
        "required": [
          "answerIds",
          "feedback",
          "generatedAt",
          "isCached",
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "audioUrl": {
            "type": "string",
            "nullable": true
          },
          "ttsHash": {
            "type": "string",
            "nullable": true
          },
          "lipSyncData": {
            "$ref": "#/components/schemas/AudioLipSyncDataDto"
          },
          "feedback": {
            "minLength": 1,
            "type": "string"
          },
          "answerIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "languageCode": {
            "type": "string"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isCached": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "QuizFeedbackInteractionType": {
        "enum": [
          "select",
          "sort"
        ],
        "type": "string"
      },
      "QuizFeedbackResponseDto": {
        "required": [
          "answerIds",
          "feedback",
          "generatedAt",
          "isCached",
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "feedback": {
            "minLength": 1,
            "type": "string"
          },
          "answerIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "languageCode": {
            "type": "string"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isCached": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "QuizNodeDto": {
        "required": [
          "characterPresenter",
          "darkTheme",
          "id",
          "label",
          "nodeType",
          "position",
          "questions",
          "questionTextColor",
          "randomizeOrder",
          "results",
          "sceneBackground",
          "showResultsAfterAnswer",
          "simulationId"
        ],
        "type": "object",
        "allOf": [
          {
            "$ref": "#/components/schemas/BaseNodeDto"
          }
        ],
        "properties": {
          "nodeType": {
            "$ref": "#/components/schemas/NodeTypeDto"
          },
          "label": {
            "type": "string"
          },
          "sceneBackground": {
            "type": "string"
          },
          "background": {
            "$ref": "#/components/schemas/QuizBackgroundDto"
          },
          "questions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QuizQuestionDto"
            }
          },
          "randomizeOrder": {
            "type": "boolean"
          },
          "showResultsAfterAnswer": {
            "type": "boolean"
          },
          "results": {
            "$ref": "#/components/schemas/QuizResultsDto"
          },
          "darkTheme": {
            "type": "boolean"
          },
          "questionTextColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "subsetQuestionCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "characterPresenter": {
            "$ref": "#/components/schemas/QuizCharacterPresenterDto"
          },
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          }
        },
        "additionalProperties": false
      },
      "QuizQuestionDto": {
        "required": [
          "allowLearnMore",
          "customFeedbackEnabled",
          "displayOrder",
          "hidden",
          "id",
          "imageAnswer",
          "questionText",
          "randomizeOrder",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/QuizQuestionTypeDto"
          },
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "questionText": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "randomizeOrder": {
            "type": "boolean"
          },
          "imageAnswer": {
            "type": "boolean"
          },
          "hidden": {
            "type": "boolean"
          },
          "image": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "imageTransformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          },
          "allowLearnMore": {
            "type": "boolean"
          },
          "feedbackContext": {
            "type": "string",
            "nullable": true
          },
          "customFeedbackEnabled": {
            "type": "boolean"
          },
          "customFeedbackIncorrect": {
            "type": "string",
            "nullable": true
          },
          "customFeedbackCorrect": {
            "type": "string",
            "nullable": true
          },
          "questionAudio": {
            "$ref": "#/components/schemas/NodeAudioDto"
          }
        },
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "select": "#/components/schemas/SelectQuestionDto",
            "sort": "#/components/schemas/SortQuestionDto",
            "matching": "#/components/schemas/MatchingQuestionDto"
          }
        }
      },
      "QuizQuestionTypeDto": {
        "enum": [
          "Select",
          "Sort",
          "Matching"
        ],
        "type": "string"
      },
      "QuizResultsDto": {
        "required": [
          "displayResultToPlayer",
          "hasPassLimit",
          "passLimit"
        ],
        "type": "object",
        "properties": {
          "hasPassLimit": {
            "type": "boolean"
          },
          "passLimit": {
            "type": "number",
            "format": "float"
          },
          "displayResultToPlayer": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "RadiusTokenDto": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Range": {
        "required": [
          "maxValue",
          "minValue"
        ],
        "type": "object",
        "properties": {
          "minValue": {
            "type": "integer",
            "format": "int32"
          },
          "maxValue": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "RangeDto": {
        "required": [
          "maxValue",
          "minValue"
        ],
        "type": "object",
        "properties": {
          "minValue": {
            "type": "integer",
            "format": "int32"
          },
          "maxValue": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "RemoveCharacterResultDto": {
        "required": [
          "updatedNodes",
          "updatedTimelines"
        ],
        "type": "object",
        "properties": {
          "updatedNodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeDto"
            }
          },
          "updatedTimelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimelineDto"
            }
          }
        },
        "additionalProperties": false
      },
      "RenameMediaReferenceDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "RenameSimulationDto": {
        "required": [
          "title"
        ],
        "type": "object",
        "properties": {
          "title": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "RenameTenantCharacterDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ReorderSpotsDto": {
        "required": [
          "spotIds"
        ],
        "type": "object",
        "properties": {
          "spotIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "ResolveCommentDto": {
        "required": [
          "resolved"
        ],
        "type": "object",
        "properties": {
          "resolved": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ResponsesComponentDto": {
        "required": [
          "background",
          "text"
        ],
        "type": "object",
        "properties": {
          "background": {
            "$ref": "#/components/schemas/BackgroundWithStrokeTokensDto"
          },
          "text": {
            "$ref": "#/components/schemas/SimpleTextTokensDto"
          }
        },
        "additionalProperties": false
      },
      "ReviewerActivationDto": {
        "required": [
          "accessToken",
          "accessTokenExpiresAtUtc",
          "displayName",
          "simulationId",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "accessToken": {
            "type": "string"
          },
          "accessTokenExpiresAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "displayName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "RichTextBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "content"
            ],
            "type": "object",
            "properties": {
              "content": {
                "$ref": "#/components/schemas/RichTextDto"
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "RichTextDto": {
        "required": [
          "textHtml",
          "textJson",
          "textPlain"
        ],
        "type": "object",
        "properties": {
          "textPlain": {
            "type": "string"
          },
          "textHtml": {
            "type": "string"
          },
          "textJson": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "RoleDto": {
        "enum": [
          "Creator",
          "Admin"
        ],
        "type": "string"
      },
      "SceneAnalysisDto": {
        "required": [
          "isAvailableInTargetTenant",
          "nodeScenes"
        ],
        "type": "object",
        "properties": {
          "sceneId": {
            "type": "string",
            "nullable": true
          },
          "isAvailableInTargetTenant": {
            "type": "boolean"
          },
          "nodeScenes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeSceneAnalysisDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SceneCharacterDto": {
        "required": [
          "placeholder",
          "position",
          "voice"
        ],
        "type": "object",
        "properties": {
          "placeholder": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "voice": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "SceneDto": {
        "required": [
          "ambienceVolume",
          "ambientSound",
          "background",
          "characters",
          "characterSpots",
          "guid",
          "id",
          "image",
          "indoorLighting",
          "name",
          "sceneBackground",
          "sceneCrop",
          "tags",
          "timeOfDay",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "guid": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "timeOfDay": {
            "type": "number",
            "format": "float"
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/ColorDto"
          },
          "ambientSound": {
            "type": "string"
          },
          "ambienceVolume": {
            "type": "number",
            "format": "float"
          },
          "background": {
            "$ref": "#/components/schemas/BackgroundDto"
          },
          "image": {
            "type": "string",
            "deprecated": true
          },
          "sceneBackground": {
            "type": "string",
            "deprecated": true
          },
          "sceneCrop": {
            "$ref": "#/components/schemas/MarginDto"
          },
          "title": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SceneCharacterDto"
            }
          },
          "characterSpots": {
            "type": "integer",
            "format": "int32"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "hidden": {
            "type": "boolean",
            "nullable": true
          },
          "isDeleted": {
            "type": "boolean",
            "nullable": true
          },
          "locked": {
            "type": "boolean",
            "nullable": true
          },
          "global": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ScriptAssistantCreationMode": {
        "enum": [
          "Undecided",
          "Context",
          "Slideshow"
        ],
        "type": "string"
      },
      "ScriptAssistantFileStatus": {
        "enum": [
          "Pending",
          "Converting",
          "Succeeded",
          "Failed"
        ],
        "type": "string"
      },
      "ScriptAssistantNarrationRequestState": {
        "enum": [
          "NotAsked",
          "Declined",
          "Requested",
          "Completed",
          "Failed"
        ],
        "type": "string"
      },
      "ScriptAssistantNarrationSource": {
        "enum": [
          "None",
          "AiDraft",
          "SpeakerNotes"
        ],
        "type": "string"
      },
      "ScriptAssistantParsingErrorCode": {
        "enum": [
          "None",
          "Unknown",
          "UnsupportedFileType",
          "FileTooLarge",
          "EncryptedFile",
          "NoTextFound",
          "CorruptFile",
          "Timeout",
          "SuspectedZipBomb",
          "TooManySlides",
          "SourceExpired",
          "NotASlideDeck"
        ],
        "type": "string"
      },
      "ScriptAssistantSessionOrigin": {
        "enum": [
          "ScriptAssistant",
          "Presentation"
        ],
        "type": "string"
      },
      "ScriptLanguageDto": {
        "required": [
          "scriptLanguage",
          "storyLocale"
        ],
        "type": "object",
        "properties": {
          "scriptLanguage": {
            "type": "string",
            "description": "What was recorded, e.g. \"Norwegian (nb-NO)\"."
          },
          "storyLocale": {
            "type": "string",
            "description": "The locale the story is now built in."
          }
        },
        "additionalProperties": false
      },
      "SectionBackgroundDto": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "color": {
            "type": "string",
            "nullable": true
          },
          "fromHex": {
            "type": "string",
            "nullable": true
          },
          "toHex": {
            "type": "string",
            "nullable": true
          },
          "angle": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "attachment": {
            "type": "string",
            "nullable": true
          },
          "mediaReferenceId": {
            "type": "string",
            "nullable": true
          },
          "imageReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          }
        },
        "additionalProperties": { }
      },
      "SectionColumnDto": {
        "required": [
          "blocks",
          "gap",
          "id",
          "padding",
          "width"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "width": {
            "type": "number",
            "format": "double"
          },
          "padding": {
            "type": "integer",
            "format": "int32"
          },
          "gap": {
            "type": "integer",
            "format": "int32"
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PageBlockDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SelectBackgroundMediaDto": {
        "required": [
          "mediaReferenceId"
        ],
        "type": "object",
        "properties": {
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SelectMediaReferenceDto": {
        "required": [
          "mediaReferenceId"
        ],
        "type": "object",
        "properties": {
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SelectTemplateMediaDto": {
        "required": [
          "mediaReferenceId"
        ],
        "type": "object",
        "properties": {
          "mediaReferenceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SelectedPlanDto": {
        "required": [
          "isTrial",
          "period",
          "plan"
        ],
        "type": "object",
        "properties": {
          "plan": {
            "$ref": "#/components/schemas/SubscriptionPlanType"
          },
          "period": {
            "$ref": "#/components/schemas/BillingPeriod"
          },
          "isTrial": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SendMessageRequestDto": {
        "required": [
          "message"
        ],
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "focusedSceneId": {
            "type": "string",
            "nullable": true
          },
          "focusedNodeId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SendSimulationEmailAccessOtpDto": {
        "required": [
          "emailAddress"
        ],
        "type": "object",
        "properties": {
          "emailAddress": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "SerializedMaterialDto": {
        "required": [
          "id",
          "materialName",
          "shaderName"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "materialName": {
            "type": "string"
          },
          "shaderName": {
            "type": "string"
          },
          "renderQueue": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "keywords": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PropertyDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SessionDto": {
        "required": [
          "createdAt",
          "creationMode",
          "files",
          "messages",
          "narrationSource",
          "origin",
          "renderFailure",
          "sessionId",
          "status",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "sessionId": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string"
          },
          "messages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChatMessageDto"
            }
          },
          "files": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SessionFileDto"
            }
          },
          "guidelines": {
            "$ref": "#/components/schemas/GuidelinesDto"
          },
          "outline": {
            "$ref": "#/components/schemas/OutlineDto"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "creationMode": {
            "$ref": "#/components/schemas/ScriptAssistantCreationMode"
          },
          "origin": {
            "$ref": "#/components/schemas/ScriptAssistantSessionOrigin"
          },
          "narrationSource": {
            "$ref": "#/components/schemas/ScriptAssistantNarrationSource"
          },
          "renderJobId": {
            "type": "string",
            "description": "Current render job. A newer job supersedes beats from an older one.",
            "nullable": true
          },
          "renderFailure": {
            "$ref": "#/components/schemas/DeckRenderFailureReason"
          },
          "renderFailurePageCount": {
            "type": "integer",
            "description": "Slides found, for the over-ceiling message.",
            "format": "int32",
            "nullable": true
          },
          "renderFailureMaxSlides": {
            "type": "integer",
            "description": "The ceiling that was exceeded, so the client need not know the configuration.",
            "format": "int32",
            "nullable": true
          },
          "presenter": {
            "$ref": "#/components/schemas/SlideshowPresenterDto"
          }
        },
        "additionalProperties": false
      },
      "SessionFileDto": {
        "required": [
          "fileId",
          "fileName",
          "isSlideDeck",
          "mimeType",
          "parsingErrorCode",
          "parsingSucceeded",
          "sizeBytes",
          "status",
          "uploadedAt"
        ],
        "type": "object",
        "properties": {
          "fileId": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "mimeType": {
            "type": "string"
          },
          "sizeBytes": {
            "type": "integer",
            "format": "int64"
          },
          "status": {
            "$ref": "#/components/schemas/ScriptAssistantFileStatus"
          },
          "parsingSucceeded": {
            "type": "boolean",
            "description": "Derived from WeAreLearning.R2D2.Api.DTO.ScriptAssistant.SessionFileDto.Status for one release. The API and the client deploy\r\nseparately, so removing this before the client stops reading it makes every upload\r\nlook failed. Delete once the client is out — tracked as a follow-up.",
            "readOnly": true,
            "deprecated": true
          },
          "parsingErrorCode": {
            "$ref": "#/components/schemas/ScriptAssistantParsingErrorCode"
          },
          "uploadedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isSlideDeck": {
            "type": "boolean",
            "description": "Whether this file classified as a slide deck at upload time. Present here, and not only on\r\nWeAreLearning.R2D2.Api.DTO.ScriptAssistant.FileUploadResultDto, so the classification survives a session reload — the\r\nupload response is seen once, and a reloaded session would otherwise forget it."
          },
          "slideCount": {
            "type": "integer",
            "description": "Slide or page count when known; null — never zero — when not. See WeAreLearning.R2D2.Api.DTO.ScriptAssistant.FileUploadResultDto.SlideCount.",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SessionListResponseDto": {
        "required": [
          "sessions",
          "total"
        ],
        "type": "object",
        "properties": {
          "sessions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SessionSummaryDto"
            }
          },
          "total": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "SessionSummaryDto": {
        "required": [
          "createdAt",
          "creationMode",
          "fileCount",
          "fileNames",
          "hasOutline",
          "messageCount",
          "nodeCount",
          "origin",
          "sessionId",
          "status",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "sessionId": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string"
          },
          "messageCount": {
            "type": "integer",
            "format": "int32"
          },
          "fileCount": {
            "type": "integer",
            "format": "int32"
          },
          "fileNames": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "hasOutline": {
            "type": "boolean"
          },
          "nodeCount": {
            "type": "integer",
            "format": "int32"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "origin": {
            "$ref": "#/components/schemas/ScriptAssistantSessionOrigin"
          },
          "creationMode": {
            "$ref": "#/components/schemas/ScriptAssistantCreationMode"
          }
        },
        "additionalProperties": false
      },
      "SetFolderLockStatusDto": {
        "required": [
          "status"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/SimulationLockStatus"
          }
        },
        "additionalProperties": false
      },
      "SetNodeThemeDto": {
        "type": "object",
        "properties": {
          "themeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SetScriptLanguageRequestDto": {
        "required": [
          "languageCode"
        ],
        "type": "object",
        "properties": {
          "languageCode": {
            "type": "string",
            "description": "A supported language's code, e.g. \"nb-NO\"."
          }
        },
        "additionalProperties": false
      },
      "SetSimulationEventsDto": {
        "required": [
          "events"
        ],
        "type": "object",
        "properties": {
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeEventMappingDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SetSimulationLockStatusDto": {
        "required": [
          "status"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/SimulationLockStatus"
          }
        },
        "additionalProperties": false
      },
      "SetSimulationThemeDto": {
        "type": "object",
        "properties": {
          "themeId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SetSlideshowPresenterPositionDto": {
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "description": "Required. Absent is refused, not read as 0.",
            "format": "double",
            "nullable": true
          },
          "y": {
            "type": "number",
            "description": "Required. Absent is refused, not read as 0.",
            "format": "double",
            "nullable": true
          },
          "z": {
            "type": "number",
            "description": "Required. Absent is refused, not read as 0.",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "A position as a REQUEST may state it: every coordinate optional, so an omitted one is absent\r\nrather than zero."
      },
      "SetSlideshowPresenterRequestDto": {
        "required": [
          "characterId"
        ],
        "type": "object",
        "properties": {
          "characterId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/SetSlideshowPresenterPositionDto"
          },
          "rotation": {
            "type": "number",
            "description": "Required, and nullable here for the same reason WeAreLearning.R2D2.Api.DTO.ScriptAssistant.SetSlideshowPresenterRequestDto.Position is. As a plain\r\n`float` an omitted `rotation` bound to 0f and was written as a real 0-degree\r\nrotation, so a malformed or stale client silently reoriented the presenter. Absent and zero\r\nhave to be different answers; the validator refuses the first and accepts the second.\r\nMust be in [0, 360) - out of range is refused, not wrapped.",
            "format": "float",
            "nullable": true
          },
          "voiceName": {
            "type": "string",
            "description": "Omit entirely for \"no voice chosen\". An empty string is not the same answer and is refused,\r\nand so is any name the voice catalogue does not know - see the validator for why existence\r\nis checked here while locale fitness is not.\r\n            \r\nMatched case-insensitively, and STORED in the catalogue's own spelling - the response echoes\r\nback what was persisted, which may differ in case from what was sent.",
            "nullable": true
          },
          "lighting": {
            "$ref": "#/components/schemas/SlideshowPresenterLightingDto"
          }
        },
        "additionalProperties": false,
        "description": "PUT replace: the whole choice is applied verbatim and replaces any earlier one. There is no\r\npartial update - a placement without a character, or a voice for somebody else's character, is\r\nnot a state anything downstream could act on."
      },
      "SettingsTypeDto": {
        "enum": [
          "Basic",
          "Icon",
          "Custom"
        ],
        "type": "string"
      },
      "SignupOnboarding": {
        "enum": [
          "Legacy",
          "InApp"
        ],
        "type": "string"
      },
      "SimpleTextTokensDto": {
        "required": [
          "color",
          "font"
        ],
        "type": "object",
        "properties": {
          "font": {
            "$ref": "#/components/schemas/FontTokenDto"
          },
          "color": {
            "$ref": "#/components/schemas/ColorTokenDto"
          }
        },
        "additionalProperties": false
      },
      "Simulation": {
        "required": [
          "_etag",
          "_ts",
          "characterIds",
          "characters",
          "createdAt",
          "createdBy",
          "description",
          "gradient",
          "id",
          "isDeleted",
          "language",
          "protection",
          "sceneId",
          "sequenceNo",
          "simulationId",
          "skillExplorerEnabled",
          "skills",
          "startNodeId",
          "status",
          "tenantId",
          "title",
          "type",
          "voiceover"
        ],
        "type": "object",
        "properties": {
          "simulationId": {
            "type": "string",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "readOnly": true
          },
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/SimulationStatus"
          },
          "tenantId": {
            "type": "string"
          },
          "language": {
            "type": "string"
          },
          "sceneId": {
            "type": "string"
          },
          "characterIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "createdBy": {
            "type": "string"
          },
          "sequenceNo": {
            "type": "integer",
            "format": "int64"
          },
          "skillExplorerEnabled": {
            "type": "boolean"
          },
          "skills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Skill"
            }
          },
          "gradient": {
            "$ref": "#/components/schemas/Gradient"
          },
          "startNodeId": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationCharacter"
            }
          },
          "voiceover": {
            "$ref": "#/components/schemas/VoiceOver"
          },
          "protection": {
            "$ref": "#/components/schemas/SimulationProtection"
          },
          "sharedViaIntegration": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "storyType": {
            "type": "string",
            "nullable": true
          },
          "storyDescription": {
            "type": "string",
            "nullable": true
          },
          "folderId": {
            "type": "string",
            "nullable": true
          },
          "muteAmbienceSounds": {
            "type": "boolean",
            "nullable": true
          },
          "lockInfo": {
            "$ref": "#/components/schemas/SimulationLock"
          },
          "playSettings": {
            "$ref": "#/components/schemas/SimulationPlaySettings"
          },
          "themeId": {
            "type": "string",
            "nullable": true
          },
          "id": {
            "type": "string"
          },
          "_ts": {
            "type": "integer",
            "format": "int64"
          },
          "_etag": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "isDeleted": {
            "type": "boolean"
          },
          "deletedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "deletedBy": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SimulationCharacter": {
        "required": [
          "characterSpot",
          "id",
          "position",
          "role"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "selectedVoiceName": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string"
          },
          "characterSpot": {
            "type": "integer",
            "format": "int32"
          },
          "desiredOutcomeFromConversation": {
            "type": "string",
            "nullable": true
          },
          "actsLike": {
            "type": "string",
            "nullable": true
          },
          "isPlayer": {
            "type": "boolean",
            "nullable": true
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPosition"
          }
        },
        "additionalProperties": false
      },
      "SimulationCharacterDto": {
        "required": [
          "availableSpeakingStyles",
          "character",
          "gender",
          "icon",
          "id",
          "image",
          "isChild",
          "name",
          "role",
          "selectedVoiceName",
          "voiceInfo"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "selectedVoiceName": {
            "type": "string",
            "deprecated": true
          },
          "characterSpot": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "image": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "desiredOutcomeFromConversation": {
            "type": "string",
            "nullable": true
          },
          "actsLike": {
            "type": "string",
            "nullable": true
          },
          "isPlayer": {
            "type": "boolean",
            "nullable": true
          },
          "isChild": {
            "type": "boolean"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "availableSpeakingStyles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpeakingStyleDto"
            },
            "deprecated": true
          },
          "voiceInfo": {
            "$ref": "#/components/schemas/VoiceDto"
          },
          "character": {
            "$ref": "#/components/schemas/CharacterDto"
          }
        },
        "additionalProperties": false
      },
      "SimulationDto": {
        "required": [
          "characterIds",
          "characters",
          "completions",
          "createdAt",
          "createdBy",
          "description",
          "edges",
          "folderId",
          "gradient",
          "id",
          "languageCode",
          "locations",
          "menuPoints",
          "muteAmbienceSounds",
          "nodes",
          "plays",
          "publicId",
          "sceneId",
          "scenes",
          "selectedVoiceName",
          "sharedViaIntegration",
          "skillExplorerEnabled",
          "skills",
          "startNodeId",
          "status",
          "tenantId",
          "timelines",
          "title",
          "updatedAt",
          "voiceover"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "sceneId": {
            "type": "string"
          },
          "characterIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "description": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeDto"
            }
          },
          "timelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimelineDto"
            }
          },
          "edges": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdgeDto"
            }
          },
          "publicId": {
            "type": "string"
          },
          "skillExplorerEnabled": {
            "type": "boolean"
          },
          "skills": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkillDto"
            }
          },
          "createdBy": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "gradient": {
            "type": "string"
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationCharacterDto"
            }
          },
          "scenes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SceneDto"
            }
          },
          "locations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LocationDto"
            }
          },
          "startNodeId": {
            "type": "string"
          },
          "selectedVoiceName": {
            "type": "string"
          },
          "voiceover": {
            "$ref": "#/components/schemas/VoiceOverDto"
          },
          "plays": {
            "type": "integer",
            "format": "int64"
          },
          "completions": {
            "type": "integer",
            "format": "int64"
          },
          "sharedViaIntegration": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "protection": {
            "$ref": "#/components/schemas/SimulationProtectionDto"
          },
          "storyType": {
            "type": "string",
            "nullable": true
          },
          "storyDescription": {
            "type": "string",
            "nullable": true
          },
          "folderId": {
            "type": "string"
          },
          "muteAmbienceSounds": {
            "type": "boolean"
          },
          "lockInfo": {
            "$ref": "#/components/schemas/SimulationLockDto"
          },
          "folderLockInfo": {
            "$ref": "#/components/schemas/FolderLockDto"
          },
          "playSettings": {
            "$ref": "#/components/schemas/SimulationPlaySettingsDto"
          },
          "themeId": {
            "type": "string",
            "nullable": true
          },
          "menuPoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MenuPointDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SimulationIntegrationDto": {
        "required": [
          "id",
          "integrationId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "integrationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SimulationLock": {
        "required": [
          "status"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/SimulationLockStatus"
          },
          "lockedById": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "lockedBy": {
            "type": "string",
            "nullable": true
          },
          "reason": {
            "$ref": "#/components/schemas/LockReason"
          }
        },
        "additionalProperties": false
      },
      "SimulationLockDto": {
        "required": [
          "locked"
        ],
        "type": "object",
        "properties": {
          "locked": {
            "type": "boolean"
          },
          "lockedBy": {
            "type": "string",
            "nullable": true
          },
          "reason": {
            "$ref": "#/components/schemas/LockReasonDto"
          }
        },
        "additionalProperties": false
      },
      "SimulationLockStatus": {
        "enum": [
          "Locked",
          "Unlocked"
        ],
        "type": "string"
      },
      "SimulationPlaySettings": {
        "required": [
          "allowForwardNavigationSkip",
          "allowNavigation",
          "defaultInputMode",
          "hideCaptions",
          "playMobileInBrowser"
        ],
        "type": "object",
        "properties": {
          "playMobileInBrowser": {
            "type": "boolean"
          },
          "hideCaptions": {
            "type": "boolean"
          },
          "allowNavigation": {
            "type": "boolean"
          },
          "allowForwardNavigationSkip": {
            "type": "boolean"
          },
          "defaultInputMode": {
            "$ref": "#/components/schemas/PlayerInputMode"
          }
        },
        "additionalProperties": false
      },
      "SimulationPlaySettingsDto": {
        "required": [
          "allowForwardNavigationSkip",
          "allowNavigation",
          "defaultInputMode",
          "hideCaptions",
          "playMobileInBrowser"
        ],
        "type": "object",
        "properties": {
          "playMobileInBrowser": {
            "type": "boolean"
          },
          "hideCaptions": {
            "type": "boolean"
          },
          "allowNavigation": {
            "type": "boolean"
          },
          "allowForwardNavigationSkip": {
            "type": "boolean"
          },
          "defaultInputMode": {
            "$ref": "#/components/schemas/PlayerInputModeDto"
          }
        },
        "additionalProperties": false
      },
      "SimulationProtection": {
        "required": [
          "domains",
          "password"
        ],
        "type": "object",
        "properties": {
          "domains": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "password": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/SimulationProtectionType"
          }
        },
        "additionalProperties": false
      },
      "SimulationProtectionDto": {
        "type": "object",
        "properties": {
          "domains": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/SimulationProtectionTypeDto"
          }
        },
        "additionalProperties": false
      },
      "SimulationProtectionType": {
        "enum": [
          "None",
          "Domain",
          "Password"
        ],
        "type": "string"
      },
      "SimulationProtectionTypeDto": {
        "enum": [
          "None",
          "Domain",
          "Password"
        ],
        "type": "string"
      },
      "SimulationPublishSettingsDto": {
        "type": "object",
        "properties": {
          "domains": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/SimulationProtectionTypeDto"
          },
          "sharedViaIntegration": {
            "$ref": "#/components/schemas/ExternalSystem"
          },
          "integrations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationIntegrationDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SimulationStatus": {
        "enum": [
          "Draft",
          "Published"
        ],
        "type": "string"
      },
      "SimulationStatusDto": {
        "enum": [
          "Draft",
          "Published"
        ],
        "type": "string"
      },
      "SingleSingleTuple": {
        "required": [
          "item1",
          "item2"
        ],
        "type": "object",
        "properties": {
          "item1": {
            "type": "number",
            "format": "float"
          },
          "item2": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "Skill": {
        "required": [
          "feedbacks",
          "id",
          "name",
          "showEffect"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "showEffect": {
            "type": "boolean"
          },
          "feedbacks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Feedback"
            }
          }
        },
        "additionalProperties": false
      },
      "SkillDto": {
        "required": [
          "feedbacks",
          "name",
          "showEffect"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "showEffect": {
            "type": "boolean"
          },
          "feedbacks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FeedbackDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SlideshowPresenterColorDto": {
        "type": "object",
        "properties": {
          "r": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "g": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "b": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "brightness": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The lighting's colour: the same wire shape as WeAreLearning.R2D2.Dto.Locations.ColorDto, WITHOUT its defaults."
      },
      "SlideshowPresenterDto": {
        "required": [
          "characterId",
          "position",
          "rotation"
        ],
        "type": "object",
        "properties": {
          "characterId": {
            "type": "string"
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          },
          "rotation": {
            "type": "number",
            "description": "Degrees, positive clockwise. Always in [0, 360).",
            "format": "float"
          },
          "voiceName": {
            "type": "string",
            "description": "Null means no voice was chosen, which is a legal answer - it is resolved from the character's\r\ngender, the story language and the tenant's defaults when the story is built. It is NOT the\r\nsame as an empty string, which the write refuses.",
            "nullable": true
          },
          "lighting": {
            "$ref": "#/components/schemas/SlideshowPresenterLightingDto"
          }
        },
        "additionalProperties": false,
        "description": "The presenter a Slideshow user chose: who presents, where they stand, and what they sound like."
      },
      "SlideshowPresenterLightingDto": {
        "type": "object",
        "properties": {
          "timeOfDay": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "indoorLighting": {
            "$ref": "#/components/schemas/SlideshowPresenterColorDto"
          }
        },
        "additionalProperties": false,
        "description": "The presenter's lighting, in the units of a node's lighting override: `TimeOfDay` is the\r\nlight's angle as a fraction of a turn, and the colour's channels and brightness are in [0, 1].\r\nComponents are nullable for the REQUEST's sake - an omitted one is refused, not read as 0; a\r\nresponse always carries all of them."
      },
      "SlideshowStoryCreationStatus": {
        "enum": [
          "NotStarted",
          "InProgress",
          "Created"
        ],
        "type": "string"
      },
      "SortMenuPointsDto": {
        "required": [
          "menuPoints"
        ],
        "type": "object",
        "properties": {
          "menuPoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MenuPointSortItem"
            }
          }
        },
        "additionalProperties": false,
        "description": "DTO for sorting menu points"
      },
      "SortOrder": {
        "enum": [
          "Asc",
          "Desc"
        ],
        "type": "string"
      },
      "SortOrderDisplayTypeDto": {
        "enum": [
          "None",
          "Numbers",
          "Letters"
        ],
        "type": "string"
      },
      "SortWorkspacesDto": {
        "required": [
          "workspaceIds"
        ],
        "type": "object",
        "properties": {
          "workspaceIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "SourceFileFunctionalType": {
        "enum": [
          "SlideDeck",
          "Article",
          "Report",
          "Brochure"
        ],
        "type": "string"
      },
      "SourceHandleTypeDto": {
        "enum": [
          "default",
          "pass",
          "fail"
        ],
        "type": "string"
      },
      "SpacerBlockContentDto": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PageBlockContentDto"
          },
          {
            "required": [
              "height"
            ],
            "type": "object",
            "properties": {
              "height": {
                "type": "string"
              },
              "customHeight": {
                "type": "integer",
                "format": "int32",
                "nullable": true
              }
            },
            "additionalProperties": { }
          }
        ]
      },
      "SpeakingStyle": {
        "required": [
          "displayName",
          "iconUrl",
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "iconUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "SpeakingStyleDto": {
        "required": [
          "displayName",
          "iconUrl",
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "iconUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Speech": {
        "required": [
          "displayText",
          "duration",
          "nBest",
          "offset",
          "recognitionStatus"
        ],
        "type": "object",
        "properties": {
          "recognitionStatus": {
            "type": "string"
          },
          "displayText": {
            "type": "string"
          },
          "offset": {
            "type": "integer",
            "format": "int64"
          },
          "duration": {
            "type": "integer",
            "format": "int64"
          },
          "nBest": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NBest"
            }
          }
        },
        "additionalProperties": false
      },
      "SpeechProvider": {
        "enum": [
          "AzureCognitiveServices",
          "ElevenLabs"
        ],
        "type": "string"
      },
      "SpotContentTextDto": {
        "required": [
          "enabled",
          "textHtml"
        ],
        "type": "object",
        "properties": {
          "textHtml": {
            "type": "string"
          },
          "textPlain": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SpotDto": {
        "required": [
          "autoplayVideo",
          "backgroundColor",
          "confettiOnClick",
          "confettiStyle",
          "contentText",
          "disableHoverEffect",
          "disablePointerCursor",
          "hideAfterClick",
          "id",
          "label",
          "navigationTrigger",
          "position",
          "readTextAloud",
          "visualSettings"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "visualSettings": {
            "$ref": "#/components/schemas/SpotVisualSettingsDto"
          },
          "label": {
            "type": "string"
          },
          "contentText": {
            "$ref": "#/components/schemas/SpotContentTextDto"
          },
          "shapeText": {
            "$ref": "#/components/schemas/SpotShapeTextDto"
          },
          "backgroundColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "image": {
            "$ref": "#/components/schemas/SpotImageDto"
          },
          "navigationTrigger": {
            "$ref": "#/components/schemas/TriggerDto"
          },
          "hideAfterClick": {
            "type": "boolean"
          },
          "disableHoverEffect": {
            "type": "boolean"
          },
          "disablePointerCursor": {
            "type": "boolean"
          },
          "readTextAloud": {
            "type": "boolean"
          },
          "readAloudAudio": {
            "$ref": "#/components/schemas/SpotReadAloudAudioDto"
          },
          "readAloudVoice": {
            "$ref": "#/components/schemas/SpotReadAloudVoiceDto"
          },
          "autoplayVideo": {
            "type": "boolean"
          },
          "confettiOnClick": {
            "type": "boolean"
          },
          "confettiStyle": {
            "$ref": "#/components/schemas/ConfettiStyleDto"
          },
          "popupPlacementOverride": {
            "$ref": "#/components/schemas/PopupPlacementDto"
          },
          "popupAnimationOverride": {
            "$ref": "#/components/schemas/PopupAnimationDto"
          },
          "popupAnimationDirectionOverride": {
            "$ref": "#/components/schemas/PopupAnimationDirectionDto"
          },
          "popupAnimationSpeedOverride": {
            "$ref": "#/components/schemas/PopupAnimationSpeedDto"
          }
        },
        "additionalProperties": false
      },
      "SpotFigureDto": {
        "enum": [
          "Target"
        ],
        "type": "string"
      },
      "SpotImageDto": {
        "required": [
          "enabled",
          "transformation"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "mediaReference": {
            "$ref": "#/components/schemas/MediaReferenceDto"
          },
          "transformation": {
            "$ref": "#/components/schemas/ImageTransformationDto"
          }
        },
        "additionalProperties": false
      },
      "SpotPositionDto": {
        "required": [
          "spotId",
          "x",
          "y"
        ],
        "type": "object",
        "properties": {
          "spotId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "SpotReadAloudAudioDto": {
        "required": [
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "duration": {
            "type": "number",
            "format": "float",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SpotReadAloudVoiceDto": {
        "required": [
          "locale",
          "voiceShortName"
        ],
        "type": "object",
        "properties": {
          "voiceShortName": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "SpotShapeTextDto": {
        "required": [
          "textHtml"
        ],
        "type": "object",
        "properties": {
          "textHtml": {
            "type": "string"
          },
          "textPlain": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SpotVisualSettingsDto": {
        "required": [
          "height",
          "rotation",
          "type",
          "width"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/SettingsTypeDto"
          },
          "width": {
            "type": "number",
            "format": "float"
          },
          "height": {
            "type": "number",
            "format": "float"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "StageCharacterOptionDto": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "thumbnailUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StageOptionsDto": {
        "required": [
          "characters",
          "scenes",
          "slideshowSceneId",
          "storyLocale"
        ],
        "type": "object",
        "properties": {
          "scenes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StageSceneOptionDto"
            }
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StageCharacterOptionDto"
            }
          },
          "storyLocale": {
            "type": "string",
            "description": "The locale the story will be built in; the presenter's voices are offered in it."
          },
          "slideshowSceneId": {
            "type": "string",
            "description": "The scene a slideshow story is built in; the presenter drawer previews it."
          }
        },
        "additionalProperties": false
      },
      "StageSceneOptionDto": {
        "required": [
          "id",
          "name",
          "tags"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "thumbnailUrl": {
            "type": "string",
            "nullable": true
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "StoriesAndFoldersSearchResultDto": {
        "required": [
          "simulations",
          "storiesFolders"
        ],
        "type": "object",
        "properties": {
          "simulations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimulationDto"
            }
          },
          "storiesFolders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BasicFolderDto"
            }
          }
        },
        "additionalProperties": false
      },
      "StoryImportAnalysisDto": {
        "required": [
          "characters",
          "compatibility",
          "language",
          "scene",
          "summary",
          "theme"
        ],
        "type": "object",
        "properties": {
          "importToken": {
            "type": "string",
            "nullable": true
          },
          "summary": {
            "$ref": "#/components/schemas/StoryImportSummaryDto"
          },
          "compatibility": {
            "$ref": "#/components/schemas/ImportCompatibilityDto"
          },
          "characters": {
            "$ref": "#/components/schemas/CharacterAnalysisDto"
          },
          "theme": {
            "$ref": "#/components/schemas/ThemeAnalysisDto"
          },
          "scene": {
            "$ref": "#/components/schemas/SceneAnalysisDto"
          },
          "language": {
            "$ref": "#/components/schemas/LanguageAnalysisDto"
          }
        },
        "additionalProperties": false
      },
      "StoryImportSummaryDto": {
        "required": [
          "exportedAt",
          "nodeCount",
          "snapshotId",
          "sourceSimulationId",
          "storyTitle"
        ],
        "type": "object",
        "properties": {
          "snapshotId": {
            "type": "string"
          },
          "storyTitle": {
            "type": "string"
          },
          "sourceSimulationId": {
            "type": "string"
          },
          "exportedAt": {
            "type": "string",
            "format": "date-time"
          },
          "nodeCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "StoryImportVoicesDto": {
        "required": [
          "characterVoiceSuggestions"
        ],
        "type": "object",
        "properties": {
          "characterVoiceSuggestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CharacterVoiceSuggestionDto"
            }
          }
        },
        "additionalProperties": false
      },
      "StoryImportVoicesRequestDto": {
        "required": [
          "importToken",
          "targetLanguageCode"
        ],
        "type": "object",
        "properties": {
          "importToken": {
            "type": "string"
          },
          "targetLanguageCode": {
            "type": "string"
          },
          "characterMappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StoryReviewGrantActivationDto": {
        "required": [
          "activatedAt",
          "email",
          "id",
          "status"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "email": {
            "type": "string"
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "activatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "lastUsedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/StoryReviewGrantStatus"
          },
          "revokedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StoryReviewGrantCreatedDto": {
        "required": [
          "grant"
        ],
        "type": "object",
        "properties": {
          "grant": {
            "$ref": "#/components/schemas/StoryReviewGrantDto"
          },
          "inviteToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StoryReviewGrantDto": {
        "required": [
          "createdAt",
          "expiresAtUtc",
          "id",
          "mode",
          "permission",
          "simulationId",
          "status",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "mode": {
            "$ref": "#/components/schemas/StoryReviewGrantMode"
          },
          "permission": {
            "$ref": "#/components/schemas/StoryReviewPermission"
          },
          "invitedEmail": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "lastUsedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/StoryReviewGrantStatus"
          },
          "revokedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StoryReviewGrantMode": {
        "enum": [
          "GuestLink",
          "GuestEmail"
        ],
        "type": "string"
      },
      "StoryReviewGrantStatus": {
        "enum": [
          "Active",
          "Revoked"
        ],
        "type": "string"
      },
      "StoryReviewPermission": {
        "enum": [
          "CommentOnly"
        ],
        "type": "string"
      },
      "StoryReviewShareDto": {
        "required": [
          "activations",
          "createdAt",
          "expiresAtUtc",
          "id",
          "mode",
          "permission",
          "simulationId",
          "status",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "simulationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "mode": {
            "$ref": "#/components/schemas/StoryReviewGrantMode"
          },
          "permission": {
            "$ref": "#/components/schemas/StoryReviewPermission"
          },
          "invitedEmail": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAtUtc": {
            "type": "string",
            "format": "date-time"
          },
          "lastUsedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/StoryReviewGrantStatus"
          },
          "revokedAtUtc": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "activations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryReviewGrantActivationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "StoryScormExportInfoDto": {
        "required": [
          "description",
          "id",
          "languageCode",
          "publicId",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "publicId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "StoryUsageCharacterDto": {
        "required": [
          "id",
          "image",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "image": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "StoryUsageInfo": {
        "required": [
          "characters",
          "isLocked",
          "nodeIds",
          "storyId",
          "storyStatus",
          "storyTitle"
        ],
        "type": "object",
        "properties": {
          "storyId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "storyTitle": {
            "type": "string"
          },
          "storyStatus": {
            "$ref": "#/components/schemas/SimulationStatusDto"
          },
          "isLocked": {
            "type": "boolean"
          },
          "nodeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "createdBy": {
            "type": "string",
            "nullable": true
          },
          "sceneImage": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryUsageCharacterDto"
            }
          }
        },
        "additionalProperties": false
      },
      "StoryboardBeatDto": {
        "required": [
          "narrationStatus",
          "pageIndex",
          "renderStatus"
        ],
        "type": "object",
        "properties": {
          "pageIndex": {
            "type": "integer",
            "format": "int32"
          },
          "imageUrl": {
            "type": "string",
            "nullable": true
          },
          "extractedTextPreview": {
            "type": "string",
            "nullable": true
          },
          "notesPreview": {
            "type": "string",
            "nullable": true
          },
          "narration": {
            "type": "string",
            "nullable": true
          },
          "renderStatus": {
            "$ref": "#/components/schemas/BeatRenderStatus"
          },
          "narrationStatus": {
            "$ref": "#/components/schemas/BeatNarrationStatus"
          },
          "excludedAt": {
            "type": "string",
            "description": "When the user removed this slide from the storyboard. Null means present.",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StoryboardDto": {
        "required": [
          "beats",
          "isComplete",
          "narrationRequestState",
          "renderFailure",
          "storyCreationCompleted",
          "storyCreationMissingSlideCount",
          "storyCreationStatus",
          "storyCreationStopped"
        ],
        "type": "object",
        "properties": {
          "renderJobId": {
            "type": "string",
            "description": "Current render job. Null when the session has never had a deck rendered.",
            "nullable": true
          },
          "expectedSlideCount": {
            "type": "integer",
            "description": "The authoritative slide count once the render finishes, falling back to the claimed\r\ndeck's advisory count while it is in progress. Null when neither is known yet.",
            "format": "int32",
            "nullable": true
          },
          "isComplete": {
            "type": "boolean",
            "description": "True once the render finished, successfully or not - there is nothing more coming."
          },
          "renderFailure": {
            "$ref": "#/components/schemas/DeckRenderFailureReason"
          },
          "renderFailurePageCount": {
            "type": "integer",
            "description": "Slides found, for the over-ceiling message.",
            "format": "int32",
            "nullable": true
          },
          "renderFailureMaxSlides": {
            "type": "integer",
            "description": "The ceiling that was exceeded, so the client need not know the configuration.",
            "format": "int32",
            "nullable": true
          },
          "renderNarrationSource": {
            "$ref": "#/components/schemas/ScriptAssistantNarrationSource"
          },
          "narrationRequestState": {
            "$ref": "#/components/schemas/ScriptAssistantNarrationRequestState"
          },
          "storyCreationStatus": {
            "$ref": "#/components/schemas/SlideshowStoryCreationStatus"
          },
          "createdSimulationId": {
            "type": "string",
            "description": "The story, once there is one. Null for every status but\r\nWeAreLearning.R2D2.Core.ScriptAssistant.Entities.SlideshowStoryCreationStatus.Created — a build under way has nothing to\r\nnavigate into yet, which is exactly what lets the client tell \"open it\" from \"keep waiting\".",
            "nullable": true
          },
          "storyCreationCompleted": {
            "type": "boolean",
            "description": "Whether the build behind WeAreLearning.R2D2.Api.DTO.ScriptAssistant.StoryboardDto.CreatedSimulationId has FINISHED — every slide a node,\r\nevery node wired in."
          },
          "storyCreationStopped": {
            "type": "boolean",
            "description": "Whether the build behind WeAreLearning.R2D2.Api.DTO.ScriptAssistant.StoryboardDto.CreatedSimulationId stopped without finishing, with\r\nevery attempt used up (WE-2694). The storyboard offers Resume on this."
          },
          "storyCreationMissingSlideCount": {
            "type": "integer",
            "description": "How many slides the finished story is missing, when a resumed build finished with what it\r\ncould build and left the rest for the user to add in the editor. Zero for a complete story.",
            "format": "int32"
          },
          "beats": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryboardBeatDto"
            }
          }
        },
        "additionalProperties": false
      },
      "SubscriptionBillingDetailsDto": {
        "required": [
          "currency",
          "period"
        ],
        "type": "object",
        "properties": {
          "period": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "currency": {
            "$ref": "#/components/schemas/Currency"
          },
          "paymentMethod": {
            "$ref": "#/components/schemas/PaymentMethodDto"
          },
          "currentBillingCycleEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SubscriptionDetailsDto": {
        "required": [
          "currency",
          "invoiceToEmail",
          "isExpiredTrial",
          "isSubscriptionActive",
          "planAmount",
          "subscriptionType"
        ],
        "type": "object",
        "properties": {
          "nextInvoiceIssueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "planAmount": {
            "type": "number",
            "format": "double"
          },
          "invoiceTotal": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "invoiceToEmail": {
            "type": "string"
          },
          "subscriptionEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "subscriptionType": {
            "$ref": "#/components/schemas/SubscriptionTypeDto"
          },
          "trialEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isSubscriptionActive": {
            "type": "boolean"
          },
          "trialDays": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isExpiredTrial": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SubscriptionDto": {
        "required": [
          "billingDetails",
          "hasFullFeatureAccess",
          "plan"
        ],
        "type": "object",
        "properties": {
          "plan": {
            "$ref": "#/components/schemas/PlanDtoV2"
          },
          "state": {
            "$ref": "#/components/schemas/SubscriptionStateDto"
          },
          "billingDetails": {
            "$ref": "#/components/schemas/SubscriptionBillingDetailsDto"
          },
          "canManageExtras": {
            "type": "boolean",
            "nullable": true
          },
          "hasFullFeatureAccess": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SubscriptionInactivityReason": {
        "enum": [
          "TrialExpired",
          "Overdue",
          "Unpaid",
          "Paused",
          "Cancelled"
        ],
        "type": "string"
      },
      "SubscriptionPlanType": {
        "enum": [
          "Starter",
          "Pro",
          "Enterprise"
        ],
        "type": "string"
      },
      "SubscriptionStateDto": {
        "required": [
          "status"
        ],
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/SubscriptionStatus"
          },
          "trialEndDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "inactivityReason": {
            "$ref": "#/components/schemas/SubscriptionInactivityReason"
          }
        },
        "additionalProperties": false
      },
      "SubscriptionStatus": {
        "enum": [
          "Trial",
          "Active",
          "Inactive"
        ],
        "type": "string"
      },
      "SubscriptionTypeDto": {
        "enum": [
          "Paid",
          "Trial",
          "Paused"
        ],
        "type": "string"
      },
      "SuggestedCharacterDto": {
        "required": [
          "characterId",
          "gender",
          "name"
        ],
        "type": "object",
        "properties": {
          "characterId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          }
        },
        "additionalProperties": false
      },
      "SwapCharactersDto": {
        "required": [
          "existingCharacterId",
          "newCharacterId"
        ],
        "type": "object",
        "properties": {
          "existingCharacterId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "newCharacterId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "SwapCharactersResultDto": {
        "required": [
          "deletedTimelineIds",
          "updatedNodes",
          "updatedTimelines"
        ],
        "type": "object",
        "properties": {
          "updatedNodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeDto"
            }
          },
          "updatedTimelines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TimelineDto"
            }
          },
          "deletedTimelineIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "deprecated": true
          }
        },
        "additionalProperties": false
      },
      "SystemPromptDto": {
        "required": [
          "isCustom",
          "systemPrompt"
        ],
        "type": "object",
        "properties": {
          "systemPrompt": {
            "type": "string"
          },
          "isCustom": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TemplateType": {
        "enum": [
          "TextOnly",
          "ImageText",
          "TextImage",
          "IconTextVertical",
          "IconText",
          "Image"
        ],
        "type": "string"
      },
      "TenantCharacterDto": {
        "required": [
          "character",
          "definitionId",
          "gender",
          "icon",
          "id",
          "image",
          "inSlot",
          "inUse",
          "isChild",
          "name",
          "noOfStories",
          "outfitId",
          "stories"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "definitionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "outfitId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "isChild": {
            "type": "boolean"
          },
          "image": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "stories": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "character": {
            "$ref": "#/components/schemas/CharacterDto"
          },
          "inUse": {
            "type": "boolean",
            "readOnly": true
          },
          "inSlot": {
            "type": "boolean"
          },
          "noOfStories": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "TenantCharacterStoryUsageDto": {
        "required": [
          "characters",
          "isLocked",
          "storyId",
          "storyStatus",
          "storyTitle"
        ],
        "type": "object",
        "properties": {
          "storyId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "storyTitle": {
            "type": "string"
          },
          "storyStatus": {
            "$ref": "#/components/schemas/SimulationStatusDto"
          },
          "isLocked": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "string",
            "nullable": true
          },
          "sceneImage": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryUsageCharacterDto"
            }
          }
        },
        "additionalProperties": false
      },
      "TenantColorDto": {
        "required": [
          "createdBy",
          "hexValue",
          "id",
          "isDeleted",
          "isLocked",
          "name",
          "tenantId",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "hexValue": {
            "type": "string"
          },
          "isLocked": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TenantDto": {
        "required": [
          "characterIds",
          "id",
          "name",
          "signupOnboarding",
          "signupQuestionnaireCompleted"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "image": {
            "$ref": "#/components/schemas/BaseImageDto"
          },
          "characterIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "contactFirstName": {
            "type": "string",
            "nullable": true
          },
          "contactLastName": {
            "type": "string",
            "nullable": true
          },
          "externalPaymentSystemId": {
            "type": "string",
            "nullable": true
          },
          "initiallySelectedPlan": {
            "$ref": "#/components/schemas/SubscriptionPlanType"
          },
          "initiallySelectedPeriod": {
            "$ref": "#/components/schemas/BillingPeriod"
          },
          "wasTrialSelected": {
            "type": "boolean",
            "nullable": true
          },
          "signupQuestionnaireCompleted": {
            "type": "boolean"
          },
          "signupOnboarding": {
            "$ref": "#/components/schemas/SignupOnboarding"
          }
        },
        "additionalProperties": false
      },
      "TenantFontDto": {
        "required": [
          "createdBy",
          "id",
          "isDeleted",
          "isLocked",
          "name",
          "source",
          "tenantId",
          "updatedAt",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "source": {
            "$ref": "#/components/schemas/FontSource"
          },
          "fileName": {
            "type": "string",
            "nullable": true
          },
          "path": {
            "type": "string",
            "nullable": true
          },
          "googleFontFamily": {
            "type": "string",
            "nullable": true
          },
          "url": {
            "type": "string"
          },
          "isLocked": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TenantIntegrationStoriesDto": {
        "required": [
          "integrationId",
          "stories"
        ],
        "type": "object",
        "properties": {
          "integrationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "stories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TenantIntegrationStoryDto"
            }
          }
        },
        "additionalProperties": false
      },
      "TenantIntegrationStoryDto": {
        "required": [
          "id",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "title": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TenantLanguageDto": {
        "required": [
          "code",
          "label",
          "simulationsAmount"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "simulationsAmount": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "TenantMediaReferenceUsageDto": {
        "required": [
          "stories",
          "storyIds",
          "totalUsageCount"
        ],
        "type": "object",
        "properties": {
          "storyIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          },
          "stories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StoryUsageInfo"
            }
          },
          "totalUsageCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TextSimilarityDto": {
        "required": [
          "similarity"
        ],
        "type": "object",
        "properties": {
          "similarity": {
            "type": "number",
            "format": "float"
          }
        },
        "additionalProperties": false
      },
      "TextTokensDto": {
        "required": [
          "headerColor",
          "headerFont",
          "paragraphColor",
          "paragraphFont"
        ],
        "type": "object",
        "properties": {
          "headerFont": {
            "$ref": "#/components/schemas/FontTokenDto"
          },
          "headerColor": {
            "$ref": "#/components/schemas/ColorTokenDto"
          },
          "paragraphFont": {
            "$ref": "#/components/schemas/FontTokenDto"
          },
          "paragraphColor": {
            "$ref": "#/components/schemas/ColorTokenDto"
          }
        },
        "additionalProperties": false
      },
      "ThemeAnalysisDto": {
        "required": [
          "isAvailableInTargetTenant",
          "nodeOverrides"
        ],
        "type": "object",
        "properties": {
          "themeId": {
            "type": "string",
            "nullable": true
          },
          "isAvailableInTargetTenant": {
            "type": "boolean"
          },
          "nodeOverrides": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NodeThemeOverrideAnalysisDto"
            }
          }
        },
        "additionalProperties": false
      },
      "ThemeDto": {
        "required": [
          "content",
          "createdBy",
          "id",
          "isDefault",
          "isDeleted",
          "name",
          "readOnly",
          "responses",
          "status",
          "tenantId",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "isDeleted": {
            "type": "boolean"
          },
          "createdBy": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "readOnly": {
            "type": "boolean"
          },
          "isDefault": {
            "type": "boolean"
          },
          "content": {
            "$ref": "#/components/schemas/ContentComponentDto"
          },
          "responses": {
            "$ref": "#/components/schemas/ResponsesComponentDto"
          }
        },
        "additionalProperties": false
      },
      "ThreeDimensionalPosition": {
        "required": [
          "x",
          "y",
          "z"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          },
          "z": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "ThreeDimensionalPositionDto": {
        "required": [
          "x",
          "y",
          "z"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "number",
            "format": "double"
          },
          "y": {
            "type": "number",
            "format": "double"
          },
          "z": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "ThreeDimensionalPositionDtoWithOptionalZValue": {
        "required": [
          "x",
          "y"
        ],
        "type": "object",
        "properties": {
          "x": {
            "type": "integer",
            "format": "int32"
          },
          "y": {
            "type": "integer",
            "format": "int32"
          },
          "z": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TimedPhonemeDto": {
        "required": [
          "durationInSeconds",
          "phoneme",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "startTime": {
            "type": "number",
            "format": "double"
          },
          "durationInSeconds": {
            "type": "number",
            "format": "double"
          },
          "phoneme": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TimelineDto": {
        "required": [
          "characterId",
          "gestures",
          "id",
          "idles",
          "nodeId",
          "simulationId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "simulationId": {
            "type": "string"
          },
          "nodeId": {
            "type": "string"
          },
          "characterId": {
            "type": "string"
          },
          "gestures": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GestureDto"
            }
          },
          "idles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IdleDto"
            }
          }
        },
        "additionalProperties": false
      },
      "ToggleStorySkillsDto": {
        "required": [
          "skillExplorerEnabled"
        ],
        "type": "object",
        "properties": {
          "skillExplorerEnabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TrackStoryEventRequestDto": {
        "required": [
          "eventType",
          "playerId",
          "publicId",
          "sessionId",
          "storyId"
        ],
        "type": "object",
        "properties": {
          "publicId": {
            "type": "string"
          },
          "storyId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "playerId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "sessionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "eventType": {
            "$ref": "#/components/schemas/PlayerEventTypeDto"
          },
          "externalSessionId": {
            "type": "string",
            "nullable": true
          },
          "metadata": {
            "nullable": true
          },
          "client": {
            "$ref": "#/components/schemas/PlayerClientEnvironmentDto"
          },
          "cmi5Params": {
            "$ref": "#/components/schemas/Cmi5LaunchParamsDto"
          },
          "xApiParams": {
            "$ref": "#/components/schemas/XApiLaunchParamsDto"
          }
        },
        "additionalProperties": false
      },
      "TranslateAiStudioScriptRequest": {
        "required": [
          "languageCode",
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TranslateAiStudioScriptResponse": {
        "required": [
          "languageCode",
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          },
          "languageCode": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TranslateStoryDto": {
        "required": [
          "characterIdToVoiceId",
          "languageCode",
          "voiceOver"
        ],
        "type": "object",
        "properties": {
          "languageCode": {
            "type": "string"
          },
          "characterIdToVoiceId": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "voiceOver": {
            "$ref": "#/components/schemas/EditVoiceOverDto"
          }
        },
        "additionalProperties": false
      },
      "TriggerDto": {
        "required": [
          "enabled",
          "navigationType",
          "nodeContinueButton",
          "openInNewTab",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/TriggerTypeDto"
          },
          "nodeContinueButton": {
            "$ref": "#/components/schemas/NodeContinueButtonDto"
          },
          "url": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          },
          "openInNewTab": {
            "type": "boolean"
          },
          "navigationType": {
            "$ref": "#/components/schemas/NavigationTypeDto"
          },
          "targetNodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TriggerTypeDto": {
        "enum": [
          "Button",
          "Click"
        ],
        "type": "string"
      },
      "TtsAudioContentType": {
        "enum": [
          "Wav",
          "Aac",
          "Mp3"
        ],
        "type": "string"
      },
      "Unit": {
        "type": "object",
        "additionalProperties": false
      },
      "UnityApiConfigurationDto": {
        "required": [
          "fallbackImageUrl",
          "playerSettings",
          "storageUrl"
        ],
        "type": "object",
        "properties": {
          "storageUrl": {
            "type": "string"
          },
          "fallbackImageUrl": {
            "type": "string"
          },
          "playerSettings": {
            "$ref": "#/components/schemas/UnityPlayerConfigurationDto"
          }
        },
        "additionalProperties": false
      },
      "UnityMajorVersionDto": {
        "required": [
          "addressables",
          "build",
          "platform",
          "variant"
        ],
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/Platform"
          },
          "variant": {
            "$ref": "#/components/schemas/BuildVariant"
          },
          "build": {
            "$ref": "#/components/schemas/UnityVersionDto"
          },
          "addressables": {
            "$ref": "#/components/schemas/UnityVersionDto"
          }
        },
        "additionalProperties": false
      },
      "UnityPlayerConfigurationDto": {
        "required": [
          "audioInputGlobalTimeout"
        ],
        "type": "object",
        "properties": {
          "audioInputGlobalTimeout": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UnityVersionDto": {
        "required": [
          "url",
          "version"
        ],
        "type": "object",
        "properties": {
          "version": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpcomingInvoiceDto": {
        "required": [
          "addonsAmount",
          "billingPeriod",
          "email",
          "issueDate",
          "lines",
          "planAmount"
        ],
        "type": "object",
        "properties": {
          "issueDate": {
            "type": "string",
            "format": "date-time"
          },
          "planAmount": {
            "type": "number",
            "format": "double"
          },
          "addonsAmount": {
            "type": "number",
            "format": "double"
          },
          "email": {
            "type": "string"
          },
          "billingPeriod": {
            "$ref": "#/components/schemas/BillingPeriodV2"
          },
          "lines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InvoiceLineDto"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateAiStudioSessionRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "imageBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "backgroundBlobUrl": {
            "type": "string",
            "nullable": true
          },
          "prompt": {
            "type": "string",
            "nullable": true
          },
          "resolution": {
            "type": "string",
            "nullable": true
          },
          "provider": {
            "type": "string",
            "nullable": true
          },
          "voiceShortName": {
            "type": "string",
            "nullable": true
          },
          "locale": {
            "type": "string",
            "nullable": true
          },
          "sceneId": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AiStudioSessionCharacterDto"
            },
            "nullable": true
          },
          "imageStyle": {
            "$ref": "#/components/schemas/AiStudioImageStyle"
          },
          "transparentBackground": {
            "type": "boolean",
            "nullable": true
          },
          "originalScript": {
            "$ref": "#/components/schemas/AiStudioScriptOriginalDto"
          },
          "clearOriginalScript": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateBeatNarrationRequestDto": {
        "type": "object",
        "properties": {
          "narration": {
            "type": "string",
            "description": "Empty means the user cleared the box deliberately; it is persisted, not coerced.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateBlockDto": {
        "required": [
          "block"
        ],
        "type": "object",
        "properties": {
          "block": {
            "$ref": "#/components/schemas/PageBlockDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateCodeNodeSettingsDto": {
        "type": "object",
        "properties": {
          "continueButton": {
            "$ref": "#/components/schemas/NodeContinueButtonDto"
          },
          "background": {
            "$ref": "#/components/schemas/QuizBackgroundDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateColumnDto": {
        "type": "object",
        "properties": {
          "padding": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "gap": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateColumnWidthsDto": {
        "required": [
          "widths"
        ],
        "type": "object",
        "properties": {
          "widths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ColumnWidthDto"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateCommentDto": {
        "required": [
          "clearNodeId"
        ],
        "type": "object",
        "properties": {
          "position": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "nodeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "nodeOffset": {
            "$ref": "#/components/schemas/Position2dDto"
          },
          "clearNodeId": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UpdateGestureDto": {
        "required": [
          "animationId",
          "animationSpeed",
          "emotionId",
          "endTime",
          "energyLevel",
          "id",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "animationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "startTime": {
            "type": "number",
            "format": "double"
          },
          "endTime": {
            "type": "number",
            "format": "double"
          },
          "energyLevel": {
            "type": "integer",
            "format": "int32"
          },
          "animationSpeed": {
            "type": "integer",
            "format": "int32"
          },
          "lookDirection": {
            "$ref": "#/components/schemas/LookDirectionDto"
          },
          "emotionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotBackgroundDto": {
        "type": "object",
        "properties": {
          "background": {
            "$ref": "#/components/schemas/QuizBackgroundDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotContentDto": {
        "required": [
          "backgroundColor",
          "disableHoverEffect",
          "hideAfterClick",
          "label"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "backgroundColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "hideAfterClick": {
            "type": "boolean"
          },
          "disableHoverEffect": {
            "type": "boolean"
          },
          "disablePointerCursor": {
            "type": "boolean",
            "nullable": true
          },
          "readTextAloud": {
            "type": "boolean",
            "nullable": true
          },
          "autoplayVideo": {
            "type": "boolean",
            "nullable": true
          },
          "confettiOnClick": {
            "type": "boolean",
            "nullable": true
          },
          "confettiStyle": {
            "$ref": "#/components/schemas/ConfettiStyleDto"
          },
          "popupPlacementOverride": {
            "$ref": "#/components/schemas/PopupPlacementDto"
          },
          "popupAnimationOverride": {
            "$ref": "#/components/schemas/PopupAnimationDto"
          },
          "popupAnimationDirectionOverride": {
            "$ref": "#/components/schemas/PopupAnimationDirectionDto"
          },
          "popupAnimationSpeedOverride": {
            "$ref": "#/components/schemas/PopupAnimationSpeedDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotContentTextDto": {
        "required": [
          "contentText"
        ],
        "type": "object",
        "properties": {
          "contentText": {
            "$ref": "#/components/schemas/SpotContentTextDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotDto": {
        "required": [
          "autoContinue",
          "mandatoryCompletion",
          "popupAnimation",
          "popupAnimationDirection",
          "popupAnimationSpeed",
          "popupPlacement",
          "sequenceMode",
          "showFullscreen",
          "showHotspots",
          "showVisitedHotspots"
        ],
        "type": "object",
        "properties": {
          "showHotspots": {
            "type": "boolean"
          },
          "mandatoryCompletion": {
            "type": "boolean"
          },
          "showVisitedHotspots": {
            "type": "boolean"
          },
          "showFullscreen": {
            "type": "boolean"
          },
          "sequenceMode": {
            "type": "boolean"
          },
          "autoContinue": {
            "type": "boolean"
          },
          "popupPlacement": {
            "$ref": "#/components/schemas/PopupPlacementDto"
          },
          "popupAnimation": {
            "$ref": "#/components/schemas/PopupAnimationDto"
          },
          "popupAnimationDirection": {
            "$ref": "#/components/schemas/PopupAnimationDirectionDto"
          },
          "popupAnimationSpeed": {
            "$ref": "#/components/schemas/PopupAnimationSpeedDto"
          },
          "checkmarkSize": {
            "$ref": "#/components/schemas/CheckmarkSizeDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotHintDto": {
        "required": [
          "enabled",
          "hint",
          "openOnLoad"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "hint": {
            "type": "string"
          },
          "openOnLoad": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UpdateHotspotShapeTextDto": {
        "required": [
          "shapeText"
        ],
        "type": "object",
        "properties": {
          "shapeText": {
            "$ref": "#/components/schemas/SpotShapeTextDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateIdleDto": {
        "required": [
          "animationId",
          "emotionId",
          "endTime",
          "id",
          "startTime"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "animationId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "startTime": {
            "type": "number",
            "format": "double"
          },
          "endTime": {
            "type": "number",
            "format": "double"
          },
          "startPhase01": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lookDirection": {
            "$ref": "#/components/schemas/LookDirectionDto"
          },
          "emotionId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "UpdateMediaFolderDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateMediaTracksDto": {
        "required": [
          "mediaClips",
          "mediaTracks"
        ],
        "type": "object",
        "properties": {
          "mediaTracks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MediaTrackDto"
            }
          },
          "mediaClips": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MediaClipDto"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateMenuPointDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "nullable": true
          },
          "locked": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMessageDto": {
        "required": [
          "content"
        ],
        "type": "object",
        "properties": {
          "content": {
            "$ref": "#/components/schemas/RichTextDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateNoMatchNodeDto": {
        "required": [
          "retryCount"
        ],
        "type": "object",
        "properties": {
          "retryCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UpdateNodeLabelDto": {
        "required": [
          "label"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateNodeTextDto": {
        "required": [
          "text"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateOpenResponseNodeDto": {
        "required": [
          "actsLike",
          "visualHint"
        ],
        "type": "object",
        "properties": {
          "actsLike": {
            "type": "string"
          },
          "visualHint": {
            "$ref": "#/components/schemas/VisualIntentHintDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateOutcomeNodeDto": {
        "required": [
          "minimumMatchThreshold"
        ],
        "type": "object",
        "properties": {
          "minimumMatchThreshold": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "UpdateOutlineNodeRequestDto": {
        "type": "object",
        "properties": {
          "purpose": {
            "type": "string",
            "nullable": true
          },
          "contentSketch": {
            "type": "string",
            "nullable": true
          },
          "speakerHint": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateOutlineSceneRequestDto": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "learningObjective": {
            "type": "string",
            "nullable": true
          },
          "location": {
            "type": "string",
            "nullable": true
          },
          "characters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OutlineNodeCharacterDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdatePageDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "themeId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdatePageNodeDto": {
        "required": [
          "pages"
        ],
        "type": "object",
        "properties": {
          "pages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PageDto"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdatePageOrderDto": {
        "required": [
          "pageIds"
        ],
        "type": "object",
        "properties": {
          "pageIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateQuestionDisplayOrderDto": {
        "required": [
          "displayOrder"
        ],
        "type": "object",
        "properties": {
          "displayOrder": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateQuestionDto": {
        "required": [
          "allowLearnMore",
          "answers",
          "hidden",
          "imageAnswer",
          "questionText",
          "randomizeOrder",
          "type"
        ],
        "type": "object",
        "properties": {
          "questionText": {
            "$ref": "#/components/schemas/RichTextDto"
          },
          "randomizeOrder": {
            "type": "boolean"
          },
          "imageAnswer": {
            "type": "boolean"
          },
          "hidden": {
            "type": "boolean"
          },
          "type": {
            "$ref": "#/components/schemas/QuizQuestionTypeDto"
          },
          "answers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UpdateQuizAnswerDto"
            }
          },
          "sortOrderDisplayType": {
            "$ref": "#/components/schemas/SortOrderDisplayTypeDto"
          },
          "allowLearnMore": {
            "type": "boolean"
          },
          "feedbackContext": {
            "type": "string",
            "nullable": true
          },
          "customFeedbackEnabled": {
            "type": "boolean",
            "nullable": true
          },
          "customFeedbackIncorrect": {
            "type": "string",
            "nullable": true
          },
          "customFeedbackCorrect": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateQuizAnswerDto": {
        "required": [
          "id",
          "text"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "text": {
            "$ref": "#/components/schemas/RichTextDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateQuizBackgroundDto": {
        "type": "object",
        "properties": {
          "background": {
            "$ref": "#/components/schemas/QuizBackgroundDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateQuizCharacterPresenterDto": {
        "type": "object",
        "properties": {
          "characterPresenter": {
            "$ref": "#/components/schemas/QuizCharacterPresenterDto"
          }
        },
        "additionalProperties": false
      },
      "UpdateQuizNodeDto": {
        "required": [
          "darkTheme",
          "questionTextColor",
          "randomizeOrder",
          "showResultsAfterAnswer"
        ],
        "type": "object",
        "properties": {
          "randomizeOrder": {
            "type": "boolean"
          },
          "showResultsAfterAnswer": {
            "type": "boolean"
          },
          "darkTheme": {
            "type": "boolean"
          },
          "questionTextColor": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "subsetQuestionCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateQuizResultsDto": {
        "required": [
          "displayResultToPlayer",
          "hasPassLimit",
          "passLimit"
        ],
        "type": "object",
        "properties": {
          "hasPassLimit": {
            "type": "boolean"
          },
          "passLimit": {
            "type": "number",
            "format": "float"
          },
          "displayResultToPlayer": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UpdateSectionDto": {
        "type": "object",
        "properties": {
          "padding": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "columnGap": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "blockAlignment": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateSectionOrderDto": {
        "required": [
          "sectionIds"
        ],
        "type": "object",
        "properties": {
          "sectionIds": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A valid GUID",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateSpotImageDto": {
        "required": [
          "enabled"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "imageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateSpotPositionsDto": {
        "required": [
          "positions"
        ],
        "type": "object",
        "properties": {
          "positions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpotPositionDto"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateSpotVisualSettingsDto": {
        "required": [
          "height",
          "rotation",
          "type",
          "width"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/SettingsTypeDto"
          },
          "width": {
            "type": "number",
            "format": "float"
          },
          "height": {
            "type": "number",
            "format": "float"
          },
          "rotation": {
            "type": "number",
            "format": "float"
          },
          "stroke": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "fill": {
            "$ref": "#/components/schemas/ColorValue"
          },
          "roundedCorners": {
            "type": "number",
            "format": "float",
            "nullable": true
          },
          "figure": {
            "$ref": "#/components/schemas/SpotFigureDto"
          },
          "imageId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateStoryDescriptionDto": {
        "required": [
          "description"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateStorySkillDto": {
        "required": [
          "feedbacks",
          "name",
          "showEffect"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "showEffect": {
            "type": "boolean"
          },
          "feedbacks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Feedback"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateStoryVoiceoverDto": {
        "required": [
          "enabled",
          "selectedVoiceName"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "selectedVoiceName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateSystemPromptDto": {
        "type": "object",
        "properties": {
          "systemPrompt": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantColorDto": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string",
            "nullable": true
          },
          "hexValue": {
            "pattern": "^#[0-9A-Fa-f]{6}$",
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTenantFontDto": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UpdateThemeDto": {
        "required": [
          "content",
          "name",
          "responses"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "minLength": 1,
            "type": "string"
          },
          "content": {
            "$ref": "#/components/schemas/ContentComponentDto"
          },
          "responses": {
            "$ref": "#/components/schemas/ResponsesComponentDto"
          }
        },
        "additionalProperties": false
      },
      "UploadCodeNodeHtmlDto": {
        "required": [
          "html"
        ],
        "type": "object",
        "properties": {
          "html": {
            "type": "string"
          },
          "fileName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpsertSimulationCharacterDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "selectedVoiceName": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "desiredOutcomeFromConversation": {
            "type": "string",
            "nullable": true
          },
          "actsLike": {
            "type": "string",
            "nullable": true
          },
          "isPlayer": {
            "type": "boolean",
            "nullable": true
          },
          "position": {
            "$ref": "#/components/schemas/ThreeDimensionalPositionDto"
          }
        },
        "additionalProperties": false
      },
      "UserDto": {
        "required": [
          "activityInfo",
          "email",
          "firstName",
          "id",
          "lastName",
          "name",
          "profilePicture",
          "role",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "tenantId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "role": {
            "$ref": "#/components/schemas/RoleDto"
          },
          "activityInfo": {
            "$ref": "#/components/schemas/ActivityInfoDto"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "profilePicture": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ActionDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VisualIntentHintDto": {
        "required": [
          "backgroundColor",
          "hint",
          "textColor"
        ],
        "type": "object",
        "properties": {
          "hint": {
            "type": "string"
          },
          "backgroundColor": {
            "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$",
            "type": "string",
            "description": "A valid hex color string (e.g., #FFF, #FFFFFF, #FFFFFFFF)"
          },
          "textColor": {
            "pattern": "^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$",
            "type": "string",
            "description": "A valid hex color string (e.g., #FFF, #FFFFFF, #FFFFFFFF)"
          },
          "openOnLoad": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "VoiceDto": {
        "required": [
          "displayName",
          "fileFormat",
          "gender",
          "locale",
          "provider",
          "sampleAudioUrl",
          "shortName",
          "speakingStyles",
          "supportsAudioTags",
          "wordsPerMinute"
        ],
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string"
          },
          "shortName": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "sampleAudioUrl": {
            "type": "string"
          },
          "wordsPerMinute": {
            "type": "integer",
            "format": "int32"
          },
          "speakingStyles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpeakingStyle"
            }
          },
          "provider": {
            "$ref": "#/components/schemas/SpeechProvider"
          },
          "supportsAudioTags": {
            "type": "boolean"
          },
          "fileFormat": {
            "$ref": "#/components/schemas/TtsAudioContentType"
          }
        },
        "additionalProperties": false
      },
      "VoiceInfoDto": {
        "required": [
          "displayName",
          "gender",
          "locale",
          "shortName"
        ],
        "type": "object",
        "properties": {
          "shortName": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "locale": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          }
        },
        "additionalProperties": false
      },
      "VoiceOver": {
        "required": [
          "enabled",
          "gender",
          "selectedVoiceName"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "selectedVoiceName": {
            "type": "string"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          }
        },
        "additionalProperties": false
      },
      "VoiceOverDto": {
        "required": [
          "enabled",
          "gender",
          "selectedVoiceName"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "selectedVoiceName": {
            "type": "string",
            "deprecated": true
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "voiceInfo": {
            "$ref": "#/components/schemas/VoiceDto"
          }
        },
        "additionalProperties": false
      },
      "WorkspaceDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "imageUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "WorkspacesDto": {
        "required": [
          "workspaces"
        ],
        "type": "object",
        "properties": {
          "selectedWorkspaceId": {
            "type": "string",
            "description": "A valid GUID",
            "format": "uuid",
            "nullable": true
          },
          "workspaces": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WorkspaceDto"
            }
          }
        },
        "additionalProperties": false
      },
      "XApiActorDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "mbox": {
            "type": "string",
            "nullable": true
          },
          "account": {
            "$ref": "#/components/schemas/Cmi5AccountDto"
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "XApiLaunchParamsDto": {
        "type": "object",
        "properties": {
          "endpoint": {
            "type": "string",
            "nullable": true
          },
          "authToken": {
            "type": "string",
            "nullable": true
          },
          "activityId": {
            "type": "string",
            "nullable": true
          },
          "registration": {
            "type": "string",
            "nullable": true
          },
          "actor": {
            "$ref": "#/components/schemas/XApiActorDto"
          },
          "sessionId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "oauth2",
        "flows": {
          "implicit": {
            "authorizationUrl": "https://login.wearelearning.io/authorize?audience=https://api.wearelearning.io",
            "scopes": {
              "openid": "Open Id"
            }
          }
        }
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ]
}