{
  "openapi": "3.0.0",
  "info": {
    "title": "Scispot's API Documentation",
    "description": "### [Welcome! Feel Free To Visit Scispot.com](https://www.scispot.com)\n\n#### Overview\n\nThis is a documentation listing API calls for the following Scispot applications:\n\n1. Labsheets (LIMS)\n    \n2. ELN\n    \n3. Manifests (plates, boxes, racks, etc.)\n    \n4. Sequences\n    \n\n## [Getting Started](https://labsheets.scispot.io/#getting-started)\n\n### [Create a new API Key in account settings](https://labsheets.scispot.io/)\n\n- Go to [Scispot](https://labsheets.scispot.io)\n    \n- Click on the \"Account\" button in the navigation bar on the bottom left corner of your screen\n    \n- Click \"Personal Tokens\" on the left side of the pop-up modal\n    \n- Click \"Generate New Token\"\n    \n- Name your token, select token access, and click \"Generate\"\n    \n- Copy the API Key and save it somewhere safe - this token cannot be retrieved once it is generated\n    \n- This token will be used as \"apiKey\" in all API requests",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://cloudlab.scispot.io",
      "description": "Scispot Cloud Lab"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "UUID",
        "description": "Personal access token from Scispot Account → Personal Tokens"
      }
    }
  },
  "tags": [
    {
      "name": "Scispot API"
    },
    {
      "name": "Scispot API - LABSHEETS (LIMS) API",
      "description": "#### Overview\n\nThe following API calls are for the manipulation of Labsheets data.\n\n#### Terminology\n\n- **Labsheet** - A labsheet is a table that can be used to store and organize data. Labsheets can be created or manipulated in Scispot via GUI or API.\n    \n- **Uuid** - Row uuids are unique identifiers for each labsheet row used in request and response bodies. Row uuids can be found using the Get Row Data endpoint and used in other endpoint requests to manipulate specific rows.\n    \n- **ID** - IDs are user-defined values that can be used to identify rows in a labsheet. Create row IDs in labsheets by adding a column with type \"ID\" to your labsheet. The Update Row Data By ID Column endpoint uses IDs to update rows in a labsheet.\n    \n- **Column Data Types** - These are data types set for each column in a labsheet and can be viewed in a labsheet's manage view menu, under the columns tab."
    },
    {
      "name": "Scispot API - ELN API",
      "description": "#### Overview\n\nThe following API calls are for the manipulation of ELN data.\n\n#### Terminology\n\n- **Labspace** - \"Labspace\" is analogous to a directory or workspace. A labspace can contain folders,experiments, protocols and/or documentation pages. Labspaces can be created and manipulated through via GUI or API.\n- **Folder** - \"Folder\" is similar to a traditional folder. It allows users to organize their data inside different \"Labspaces\".\n- **Protocol** - A protocol is a base object used to store and organize protocol data. It is analogous to a page in a traditional laboratory record.\n- **Experiment** - An experiment is a base object used to store and organize experiment data and related protocols. It is also analogous to a page in a traditional laboratory record.\n- **Documentation** - A documentation page is a base object analogous to a simple note-taking page."
    },
    {
      "name": "Scispot API - ELN API - Create"
    },
    {
      "name": "Scispot API - ELN API - Update"
    },
    {
      "name": "Scispot API - ELN API - Find"
    },
    {
      "name": "Scispot API - ELN API - List"
    },
    {
      "name": "Scispot API - ELN API - Delete"
    },
    {
      "name": "Scispot API - ELN API - Permissions (Super Admin Only)",
      "description": "### Permissions Endpoint\n\nThese endpoint allows you to list, add, remove useres from a private folder.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- These endpoints only work for folders that are already privated"
    },
    {
      "name": "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API",
      "description": "#### Overview\n\nThe following API calls are for the manipulation of manifest data.\n\n#### Terminology\n\n- **Manifest** - A visual representation of a well plate."
    },
    {
      "name": "Scispot API - SEQUENCE API",
      "description": "#### Overview\n\nThe following API calls are for the manipulation of DNA sequence data."
    },
    {
      "name": "Scispot API - FILES API"
    },
    {
      "name": "Scispot API - LOCATIONS API"
    },
    {
      "name": "Scispot API - LABFLOWS API"
    },
    {
      "name": "Scispot API - WEBHOOK API"
    }
  ],
  "paths": {
    "/labsheets/create": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Create Labsheet",
        "description": "NOTE:\n\n- Labsheet names should be unique\n    \n- Column names should be unique within the same labsheet\n    \n- Every labsheet must have exactly one ID type column\n    \n- Every labsheet must have a non-empty name\n    \n- Every labsheet column must have a non-empty name\n    \n- Labsheet and column names can have at most 30 characters\n    \n- You can also add reference columns of type \"CONNECTION\", with connections to other data\n    \n- Labsheets can be created within a labsheet folder by specifying the name of folder\n    \n- List of supported magic column types: \"LABSPACES\", \"LAST_MODIFIED\", \"EXISTING_MANIFEST\", \"PROTOCOLS\", \"EXPERIMENTS\". Additonal Note: Names are ignored for these columns as they have already have a set name\n\nColumn objects require name/type for normal columns; LIST columns require references. Supported column types include TEXT, NUMBER, DATE, DATETIME, ID, ID_BARCODE, SEQUENCE_DATA, QUANTITY_LEFT, QUANTITY_CONSUMED, CHECKBOX, ATTACHED_FILES, IMAGE_COL, LINK, LOOKUP, FOREIGN_KEY, LIST, and FORMULA.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "columns": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string"
                        },
                        "position": {
                          "type": "string"
                        },
                        "formula": {
                          "type": "string"
                        },
                        "references": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "labsheet": {
                          "type": "string"
                        },
                        "linkColumn": {
                          "type": "string"
                        },
                        "lookupColumnName": {
                          "type": "string"
                        },
                        "prefix": {
                          "type": "string"
                        },
                        "numberOfNumPlaces": {
                          "type": "number"
                        }
                      },
                      "additionalProperties": true
                    }
                  },
                  "folder": {
                    "type": "string"
                  },
                  "waitRefresh": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "name",
                  "columns"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK for legacy/non-v2; API-v2 success is 201 Created.",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "path": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "name": "Samples",
                  "uuid": "<uuid>",
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "201": {
            "description": "OK for legacy/non-v2; API-v2 success is 201 Created.",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "path": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "name": "Samples",
                  "uuid": "<uuid>",
                  "success": true
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "List Labsheets",
        "description": "Retrieve list of labsheets",
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "items": [
                    {
                      "name": "Samples"
                    }
                  ],
                  "total": 1,
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/add-rows": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Add Rows",
        "description": "Add rows to a Labsheet. Ensure row values correspond to the column labels in the labsheet and are defined for each column.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "rows": {
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "The value of the cell in the order of the columns in the labsheet"
                      }
                    }
                  },
                  "waitRefresh": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "labsheet",
                  "rows"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "row": {
                        "type": "string"
                      },
                      "success": {
                        "type": "string"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "row": "1",
                    "success": "true",
                    "uuid": "<uuid>"
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/update-rows": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Update Rows",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "rows": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "uuid": {
                          "type": "string"
                        },
                        "data": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "ignoreAlert": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "uuid",
                        "data"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "labsheet",
                  "rows"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "success": {
                        "type": "string"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "uuid": "<uuid>",
                    "success": "true"
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/delete-row-by-uuid": {
      "delete": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Delete Single Row",
        "description": "Remove rows from a labsheet given the row uuids and labsheet name. Row uuids are unique identifiers for each row in your labsheet and can be found using the Get Labsheet Rows endpoint.",
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "the name of the labsheet",
            "example": "Type: string",
            "required": true
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "the uuid of the row to be  deleted",
            "example": "Type: string",
            "required": true
          },
          {
            "name": "waitRefresh",
            "in": "query",
            "schema": {
              "type": "boolean"
            },
            "description": "Optional (Default false). Waits for the data to be reindexed before returning a success. This will add up to 1 second of latency to the requests, so only use this flag if there is a need to query this item again.",
            "example": "Type: boolean"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "success": {
                        "type": "string"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "uuid": "<uuid>",
                    "success": "true"
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/delete-rows-by-uuids": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Delete Rows",
        "description": "Remove rows from a labsheet given the row uuids and labsheet name. Row uuids are unique identifiers for each row in your labsheet and can be found using the Get Labsheet Rows endpoint.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "uuids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "waitRefresh": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "labsheet",
                  "uuids"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "uuid": {
                        "type": "string"
                      },
                      "success": {
                        "type": "string"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "uuid": "<uuid>",
                    "success": "true"
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/fetch-row": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Row Data",
        "description": "This endpoint returns data stored in a single row given the row's uuid and the name of its labsheet. Row uuids can be found using the Get Labsheet Rows endpoint.",
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the selected labsheet",
            "required": true
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "the uuid of the row",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "headers": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "row": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "message": {
                      "type": "string"
                    },
                    "success": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "headers": [
                    "uuid",
                    "ID"
                  ],
                  "row": [
                    "<uuid>",
                    "SAMPLE-1"
                  ],
                  "success": "true"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/fetch-row-by-id": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Row Data By ID Column",
        "description": "Uses a value of cell in an **ID** or **ID_BARCODE** type column to retrieve the row. By default value in **\"id\"** key maps to the value for **ID** type column. To find rows by **ID_BARCODE** type (automated IDs) column instead, **\"idType\"** key has to be set to **\"ID_BARCODE\"** in the payload.",
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the selected labsheet",
            "required": true
          },
          {
            "name": "id",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Value in the ID or ID_BARCODE column of the row to be fetched",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "headers": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "rows": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "object"
                        }
                      }
                    },
                    "message": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "headers": [
                    "uuid",
                    "ID"
                  ],
                  "rows": [
                    [
                      "<uuid>",
                      "SAMPLE-1"
                    ]
                  ],
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/fetch-list-rows": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Labsheet Rows",
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the selected labsheet",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Number of rows to be fetched (defaults to 5 if not specified)"
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The page number of rows to be fetched indexed from 1, where a page is a set of rows of size pageSize. (setting pageSize as \"10\" and page as \"2\"will fetch rows 11-20) (defaults to 1 if not specified)"
          },
          {
            "name": "archiveState",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "(Optional) Whether to filter out archived or unarchived rows. Possible values: \"archived\", \"unarchived\", \"any\" (defaults to \"any\" if not provided)"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "headers": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "rows": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "object"
                        }
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "path": {
                      "type": "string"
                    },
                    "success": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "headers": [
                    "uuid",
                    "ID"
                  ],
                  "rows": [
                    [
                      "<uuid>",
                      "SAMPLE-1"
                    ]
                  ],
                  "total": 1,
                  "success": "true"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "description": "Pagination constraints: pageSize must be at most 1000, and page multiplied by pageSize must be less than 50000. Violations return HTTP 400 with a plain string message."
      },
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Labsheet Rows(with Filter)",
        "description": "Retrieve Labsheet rows with optional and mandatory filters. The request body accepts a query object with optionalFilters and mandatoryFilters arrays. Optional filters are combined with OR logic. Mandatory filters are combined with AND logic. Each filter can include column, value, and operator fields. Supported operators include contains, equals, before, and after. Use before and after for date, datetime, date_created, and last_modified fields. Pagination constraints: pageSize must be at most 1000, and page multiplied by pageSize must be less than 50000. Violations return HTTP 400 with a plain string message.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "query": {
                    "type": "object",
                    "properties": {
                      "mandatoryFilters": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "column": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            },
                            "startDate": {
                              "type": "string"
                            },
                            "endDate": {
                              "type": "string"
                            },
                            "operator": {
                              "type": "string"
                            }
                          },
                          "additionalProperties": true
                        }
                      },
                      "optionalFilters": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "column": {
                              "type": "string"
                            },
                            "value": {
                              "type": "string"
                            },
                            "startDate": {
                              "type": "string"
                            },
                            "endDate": {
                              "type": "string"
                            },
                            "operator": {
                              "type": "string"
                            }
                          },
                          "additionalProperties": true
                        }
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the selected labsheet",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Number of rows to be fetched (defaults to 5 if not specified)"
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The page number of rows to be fetched indexed from 1, where a page is a set of rows of size pageSize. (setting pageSize as \"10\" and page as \"2\"will fetch rows 11-20) (defaults to 1 if not specified)"
          },
          {
            "name": "archiveState",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "(Optional) Whether to filter out archived or unarchived rows. Possible values: \"archived\", \"unarchived\", \"any\" (defaults to \"any\" if not provided)"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "headers": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "rows": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "object"
                        }
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "path": {
                      "type": "string"
                    },
                    "success": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "headers": [
                    "uuid",
                    "ID"
                  ],
                  "rows": [
                    [
                      "<uuid>",
                      "SAMPLE-1"
                    ]
                  ],
                  "total": 1,
                  "success": "true"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/update-rows-by-id": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Update Row Data By ID Column",
        "description": "Update individual row values by matching indexes with an \"ID\" or \"ID_BARCODE\" column in a labsheet. A column with type \"ID\" or \"ID_BARCODE\" must be included in the labsheet to use this endpoint.\n\nNote that row uuids used in other endpoints are entirely different than their \"ID\" and \"ID_BARCODE\" column values. Uuids are randomly generated unlike values in the \"ID\" column or \"ID_BARCODE\" column.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "rows": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "labsheet",
                  "rows"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "ID": {
                        "type": "string"
                      },
                      "updatedRows": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "uuid": {
                              "type": "string"
                            },
                            "success": {
                              "type": "string"
                            },
                            "message": {
                              "type": "string"
                            }
                          },
                          "additionalProperties": true
                        }
                      },
                      "success": {
                        "type": "string"
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/update-rows-by-column-type": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Update Row Data By Known Cell Value (DEPRECEATED)",
        "description": "This endpoint is depreceated. BATCH_ID Column is no longer supported\n\nUpdate other cells in a row given a known cell value.\n\nThis feature is currently only supported for BATCH_ID column type. Contact the scispot team on Slack or [engineering@scispot.io](https://mailto:engineering@scispot.io) if you would like to see this feature for other column types.\n\ncolumnType currently supports BATCH_ID. Use /labsheets/update-rows-by-id for ID columns.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "columnType": {
                    "type": "string",
                    "enum": [
                      "BATCH_ID"
                    ]
                  },
                  "rows": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "labsheet",
                  "columnType",
                  "rows"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "additionalProperties": true
                  }
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/create-children": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Create Children Samples",
        "description": "Create children samples from existing samples in labsheets.\n\nNOTE: To perform this operation, it is necessary that the labsheet has an ID column and a Quantity column. Also, the parent sample should have quantity greater than or equal to the sum of quantity of children.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "parent": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "children": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "ID": {
                          "type": "string"
                        },
                        "quantity": {
                          "type": "string"
                        }
                      },
                      "additionalProperties": true
                    }
                  },
                  "waitRefresh": {
                    "type": "boolean"
                  },
                  "idType": {
                    "type": "string",
                    "description": "Optional. Identifier type used to resolve the parent/children."
                  },
                  "destinationLabsheet": {
                    "type": "string",
                    "description": "Optional. Labsheet to create the children in, if different from the parent's labsheet."
                  }
                },
                "required": [
                  "labsheet",
                  "parent",
                  "children"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "ids": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/get-labsheet-schema": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Labsheet Schema",
        "description": "Get a labsheet's structure, including all of its column names",
        "parameters": [
          {
            "name": "labsheet",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the labsheet",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "labsheet": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string"
                        },
                        "columns": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "name": {
                                "type": "string"
                              },
                              "type": {
                                "type": "string"
                              },
                              "position": {
                                "type": "string"
                              },
                              "formula": {
                                "type": "string"
                              },
                              "references": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "labsheet": {
                                "type": "string"
                              },
                              "linkColumn": {
                                "type": "string"
                              },
                              "lookupColumnName": {
                                "type": "string"
                              },
                              "prefix": {
                                "type": "string"
                              },
                              "numberOfNumPlaces": {
                                "type": "number"
                              }
                            },
                            "additionalProperties": true
                          }
                        }
                      },
                      "additionalProperties": true
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/create-column": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Create Column",
        "description": "Add a column to a labsheet.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "column": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "type": {
                        "type": "string"
                      },
                      "position": {
                        "type": "string"
                      },
                      "formula": {
                        "type": "string"
                      },
                      "references": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "labsheet": {
                        "type": "string"
                      },
                      "linkColumn": {
                        "type": "string"
                      },
                      "lookupColumnName": {
                        "type": "string"
                      },
                      "prefix": {
                        "type": "string"
                      },
                      "numberOfNumPlaces": {
                        "type": "number"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "required": [
                  "labsheet",
                  "column"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "201": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/rename-column": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Rename Column",
        "description": "Rename a column in a labsheet.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "oldName": {
                    "type": "string"
                  },
                  "newName": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "oldName",
                  "newName"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/delete-column": {
      "delete": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Delete Column",
        "description": "Delete a column from a labsheet.",
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "success": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "columnName": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "columnName"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": []
      }
    },
    "/labsheets": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Filter Labsheets",
        "description": "Filters labsheet records. This endpoint is implemented by TableController and currently dispatches the FILTER action.\n\nOnly action FILTER is implemented by TableController. Unsupported or missing action can return a null body with HTTP 200.\n\nImplementation note: this route is handled by TableController, not EasyAPIController. Unsupported actions or caught controller exceptions can return a null body with HTTP 200 rather than a structured error response.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "action": {
                    "type": "string",
                    "description": "Action to execute. Use FILTER.",
                    "example": "FILTER"
                  },
                  "token": {
                    "type": "string",
                    "description": "User/session token, when required."
                  },
                  "customerId": {
                    "type": "string",
                    "description": "Customer identifier."
                  },
                  "entity": {
                    "type": "string",
                    "description": "Labsheet/entity name to filter."
                  },
                  "limit": {
                    "type": "string",
                    "description": "Maximum number of rows to return."
                  },
                  "offset": {
                    "type": "string",
                    "description": "Offset for pagination."
                  },
                  "filterBy": {
                    "type": "array",
                    "description": "Filter clauses.",
                    "items": {
                      "type": "object"
                    }
                  },
                  "orderBy": {
                    "type": "array",
                    "description": "Sort clauses.",
                    "items": {
                      "type": "object"
                    }
                  },
                  "groupBy": {
                    "type": "array",
                    "description": "Fields to group by.",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "required": [
                  "action"
                ]
              },
              "example": {
                "action": "FILTER",
                "entity": "Samples",
                "limit": "50",
                "offset": "0",
                "filterBy": [],
                "orderBy": [],
                "groupBy": []
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "totalItems": {
                      "type": "number"
                    },
                    "limit": {
                      "type": "string"
                    },
                    "offset": {
                      "type": "string"
                    },
                    "instances": {
                      "type": "array",
                      "items": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      }
                    },
                    "columns": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          },
                          "position": {
                            "type": "string"
                          },
                          "formula": {
                            "type": "string"
                          },
                          "references": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          },
                          "labsheet": {
                            "type": "string"
                          },
                          "linkColumn": {
                            "type": "string"
                          },
                          "lookupColumnName": {
                            "type": "string"
                          },
                          "prefix": {
                            "type": "string"
                          },
                          "numberOfNumPlaces": {
                            "type": "number"
                          }
                        },
                        "additionalProperties": true
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/add-sequence-to-row": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Add Sequence to Labsheet Row (DEPRECEATED)",
        "description": "### Add Sequence to Row\n\nThis endpoint allows you to add a sequence to a specific row in the labsheets. It is mandatory to provide either sequenceName or sequenceUuid to identify the sequence.\n\nValidation notes: provide at least one of sequenceName, sequenceUuid.\n\nProvide at least one of sequenceName or sequenceUuid. LS20 supports sequenceColumn; createClone defaults false for LS20 and is ignored by legacy behavior.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "id": {
                    "type": "string"
                  },
                  "sequenceName": {
                    "type": "string"
                  },
                  "sequenceUuid": {
                    "type": "string"
                  },
                  "sequenceColumn": {
                    "type": "string"
                  },
                  "createClone": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "labsheet",
                  "id"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheet-folder/list": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "List Labsheet Folders",
        "description": "Retrieve list of labsheet folders",
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Date": {
                "schema": {
                  "type": "string",
                  "example": "Fri, 17 Jan 2025 01:41:51 GMT"
                }
              },
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              },
              "Content-Length": {
                "schema": {
                  "type": "integer",
                  "example": "3611"
                }
              },
              "Connection": {
                "schema": {
                  "type": "string",
                  "example": "keep-alive"
                }
              },
              "Vary": {
                "schema": {
                  "type": "string",
                  "example": "Access-Control-Request-Headers"
                }
              },
              "X-Content-Type-Options": {
                "schema": {
                  "type": "string",
                  "example": "nosniff"
                }
              },
              "X-XSS-Protection": {
                "schema": {
                  "type": "string",
                  "example": "1; mode=block"
                }
              },
              "Cache-Control": {
                "schema": {
                  "type": "string",
                  "example": "no-cache, no-store, max-age=0, must-revalidate"
                }
              },
              "Pragma": {
                "schema": {
                  "type": "string",
                  "example": "no-cache"
                }
              },
              "Expires": {
                "schema": {
                  "type": "integer",
                  "example": "0"
                }
              },
              "X-Frame-Options": {
                "schema": {
                  "type": "string",
                  "example": "DENY"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "folders": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/labsheet-folder/list-labsheets-by-folder-name": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "List Labsheets In Folder",
        "description": "Retrieve list of labsheet folders",
        "parameters": [
          {
            "name": "folder",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Date": {
                "schema": {
                  "type": "string",
                  "example": "Fri, 17 Jan 2025 01:41:51 GMT"
                }
              },
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              },
              "Content-Length": {
                "schema": {
                  "type": "integer",
                  "example": "3611"
                }
              },
              "Connection": {
                "schema": {
                  "type": "string",
                  "example": "keep-alive"
                }
              },
              "Vary": {
                "schema": {
                  "type": "string",
                  "example": "Access-Control-Request-Headers"
                }
              },
              "X-Content-Type-Options": {
                "schema": {
                  "type": "string",
                  "example": "nosniff"
                }
              },
              "X-XSS-Protection": {
                "schema": {
                  "type": "string",
                  "example": "1; mode=block"
                }
              },
              "Cache-Control": {
                "schema": {
                  "type": "string",
                  "example": "no-cache, no-store, max-age=0, must-revalidate"
                }
              },
              "Pragma": {
                "schema": {
                  "type": "string",
                  "example": "no-cache"
                }
              },
              "Expires": {
                "schema": {
                  "type": "integer",
                  "example": "0"
                }
              },
              "X-Frame-Options": {
                "schema": {
                  "type": "string",
                  "example": "DENY"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "labsheets": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/labsheet-folder/create": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Create Folder",
        "description": "Create a Labsheet Folder",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  }
                },
                "required": [
                  "name"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheet-folder/move-labsheet-to-folder": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Move Labsheet To Folder",
        "description": "Move Labsheet to designated folder.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "folder": {
                    "type": "string"
                  },
                  "labsheet": {
                    "type": "string"
                  }
                },
                "required": [
                  "folder",
                  "labsheet"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/get-labsheet-template-schema": {
      "get": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Get Labsheet Template Schema",
        "description": "Retrieve Schema of Labsheet Template",
        "parameters": [
          {
            "name": "templateName",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the Labsheet template",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "columns": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          },
                          "position": {
                            "type": "string"
                          },
                          "formula": {
                            "type": "string"
                          },
                          "references": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          },
                          "labsheet": {
                            "type": "string"
                          },
                          "linkColumn": {
                            "type": "string"
                          },
                          "lookupColumnName": {
                            "type": "string"
                          },
                          "prefix": {
                            "type": "string"
                          },
                          "numberOfNumPlaces": {
                            "type": "number"
                          }
                        },
                        "additionalProperties": true
                      }
                    },
                    "name": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/labsheet-to-template": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Convert Labsheet to Template",
        "description": "Convert a Labsheet into a Labsheet Template",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "templateName": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "templateName"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "Id": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "entities": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "createdBy": {
                      "type": "string"
                    },
                    "creationDate": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labsheets/assign-location": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Assign Location",
        "description": "Assigns a physical location to one or more labsheet entries (rows). This API endpoint supports assigning to locations as well as manifests. When assigning samples to manifest locations, it is possible to use the optional position field to assign the well position the samples are to be assigned.\n\nNotes:\n\n- All assignments in a single request must use the same idType\n    \n- Position assignment is optional; entries can be assigned to a location without specific positions\n    \n- The system validates that the location exists before processing assignements",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "locationId": {
                    "type": "string"
                  },
                  "idType": {
                    "type": "string",
                    "enum": [
                      "ID",
                      "ID_BARCODE",
                      "ROW_UUID",
                      "SCISPOT_BARCODE"
                    ]
                  },
                  "assignments": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "position": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "id"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "labsheet",
                  "locationId",
                  "assignments"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "assignedPositions": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "assignedEntries": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    },
                    "error": {
                      "type": "string"
                    },
                    "alreadyLinked": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labsheets/link-external-barcode": {
      "post": {
        "tags": [
          "Scispot API - LABSHEETS (LIMS) API"
        ],
        "summary": "Link External Barcode",
        "description": "This endpoint allows the user to link external barcodes to labsheets that have the external barcode column type. This endpoint also allows the user to link barcodes to labsheet entries that already has an external barcode. This usage will allow multiple external barcodes to refer to the same entry, instead of replacing the existing external barcode.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "externalBarcode": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "externalBarcode",
                  "uuid"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "externalBarcode": {
                      "type": "string"
                    },
                    "error": {
                      "type": "string"
                    },
                    "alreadyLinked": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/protocol/new": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Create"
        ],
        "summary": "Create Protocol",
        "description": "Create protocol inside a labspace, folder or a subfolder  \n  \n  \n**Note**: Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of labspace, folder.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "template": {
                    "type": "string"
                  },
                  "templateId": {
                    "type": "string"
                  },
                  "startDate": {
                    "type": "string"
                  },
                  "endDate": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string",
                    "description": "Optional human-readable ID for the page."
                  },
                  "steps": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "required": [
                  "name",
                  "location"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "hrid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/experiment/new": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Create"
        ],
        "summary": "Create Experiment",
        "description": "Create an experiment page inside a labspace, folder or subfolder\n\n**Note**: Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of folder, labspace.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "template": {
                    "type": "string"
                  },
                  "templateId": {
                    "type": "string"
                  },
                  "startDate": {
                    "type": "string"
                  },
                  "endDate": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string",
                    "description": "Optional human-readable ID for the page."
                  },
                  "steps": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "required": [
                  "name",
                  "location"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "hrid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/documentation/new": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Create"
        ],
        "summary": "Create Documentation",
        "description": "Create a documentation page inside a labspace, folder or subfolder\n\n**Note**: Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of labspace, folder.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "template": {
                    "type": "string"
                  },
                  "templateId": {
                    "type": "string"
                  },
                  "startDate": {
                    "type": "string"
                  },
                  "endDate": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string",
                    "description": "Optional human-readable ID for the page."
                  },
                  "steps": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                },
                "required": [
                  "name",
                  "location"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "hrid": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/create": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Create"
        ],
        "summary": "Create Labspace",
        "description": "Create a labspace",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  }
                },
                "required": [
                  "name"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/folder/new": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Create"
        ],
        "summary": "Create Folder",
        "description": "Create a folder/subfolder inside a labspace, folder or a subfolder\n\n**Note**: Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  }
                },
                "required": [
                  "name",
                  "location"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/protocol/write": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Write To A Protocol",
        "description": "This endpoint allows users to append the `contentType`, using `contentToAppend`, replace using `contentToReplace`, and add to the head using `contentToHead`to the protocol.\n\nIf `contentType` is \"image\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- uuid: (String) The uuid of the image. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the image\n    \n\nIf `contentType` is \"json\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- elements: (array) This will serve as the base object. This array will contain all other elemennts that will be added into the protocol. Elements can either contain section, text, or file json objects as described below\n    \n\nHere are the structure of each element object. Currently only sections, texts, or files are supported\n\n- type: (String) The identifier of what this type this JSON object will be. Currently supports \"text\", \"section\", \"text\"\n    \n\nSection type only :\n\n- items: (array) An array of elements that will be embedded within a section. Note nested sections are not allowed\n    \n\nText type only:\n\n- content: (string) The text to be added in\n    \n- headers : (string) What header to use for the text. Currently supports \"h1\", \"h2', \"h3\", \"h4\", \"h5\", \"h6\". (Optional)\n    \n- bold : (boolean) Add bold formatting to the text) (Optional)\n    \n- italics : (boolean) Add italics formatting to the text (Optional)\n    \n- underline : (boolean) Add underline formatting to the text (Optional)\n    \n- strikethrough: (boolean) Add strikethroughformatting to the text (Optional)\n    \n\nFile Type only\n\n- uuid: (String) The uuid of the file. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the file, eg. \"file.csv\"\n    \n- fileType: (String) The type of the file, eg. \"csv\"\n    \n\nExample of a valid JSON for contentType \"json\":\n\n``` json\n{\n        \"elements\": [\n            {\n            \"type\": \"section\",\n            \"items\": [\n                {\n                \"type\": \"text\",\n                \"header\": \"h3\",\n                \"bold\": true,\n                \"italics\": true\n                \"content\": \"This is the title of the section\"\n                },\n                {\n                \"type\": \"text\",\n                \"content\": \"This is the content of my section\"\n                }\n            ]\n            },\n            {\n            \"type\": \"text\",\n            \"content\": \"Some text outside the section\"\n            },\n            {\n            \"type\": \"file\",\n            \"uuid\": \"e1962cf0-e905-4111-8ed2-3c1b754b1b08\",\n            \"name\": \"test.csv\",\n            \"fileType\": \"csv\"\n            }\n        ]\n        }\n\n ```\n\nValidation notes: provide at least one of name, hrid, uuid; provide at least one of contentToAppend, contentToReplace, contentToHead.\n\nProvide one of name, uuid, or hrid and at least one of contentToAppend, contentToReplace, or contentToHead. contentType defaults to text and supports image and json payloads.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "contentType": {
                    "type": "string",
                    "enum": [
                      "text",
                      "image",
                      "json"
                    ]
                  },
                  "contentToAppend": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToReplace": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToHead": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "start_date": {
                    "type": "string"
                  },
                  "end_date": {
                    "type": "string"
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/experiment/write": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Write To An Experiment",
        "description": "This endpoint allows users to append the `contentType`, using `contentToAppend`, replace using `contentToReplace`, and add to the head using `contentToHead`to the protocol.\n\nIf `contentType` is \"image\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- uuid: (String) The uuid of the image. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the image\n    \n\nIf `contentType` is \"json\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- elements: (array) This will serve as the base object. This array will contain all other elemennts that will be added into the experiment. Elements can either contain section, text, or file json objects as described below\n    \n\nHere are the structure of each element object. Currently only sections and texts are supported\n\n- type: (String) The identifier of what this type this JSON object will be. Currently supports \"text\", \"section\", \"text\"\n    \n\nSection type only :\n\n- items: (array) An array of elements that will be embedded within a section. Note nested sections are not allowed\n    \n\nText type only:\n\n- content: (string) The text to be added in\n    \n- headers : (string) What header to use for the text. Currently supports \"h1\", \"h2', \"h3\", \"h4\", \"h5\", \"h6\". (Optional)\n    \n- bold : (boolean) Add bold formatting to the text) (Optional)\n    \n- italics : (boolean) Add italics formatting to the text (Optional)\n    \n- underline : (boolean) Add underline formatting to the text (Optional)\n    \n- strikethrough: (boolean) Add strikethroughformatting to the text (Optional)\n    \n\nFile Type only\n\n- uuid: (String) The uuid of the file. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the file, eg. \"file.csv\"\n    \n- fileType: (String) The type of the file, eg. \"csv\n    \n\nProtocol Template type only:\n\n- protocolUuid: (String) The name of the protocol template to copy and embed.\n    \n\nExample of a valid JSON for contentType \"json\":\n\n``` json\n{\n        \"elements\": [\n            {\n            \"type\": \"section\",\n            \"items\": [\n                {\n                \"type\": \"text\",\n                \"header\": \"h3\",\n                \"bold\": true,\n                \"italics\": true\n                \"content\": \"This is the title of the section\"\n                },\n                {\n                \"type\": \"text\",\n                \"content\": \"This is the content of my section\"\n                }\n            ]\n            },\n            {\n            \"type\": \"text\",\n            \"content\": \"Some text outside the section\"\n            },\n            {\n            \"type\": \"file\",\n            \"uuid\": \"e1962cf0-e905-4111-8ed2-3c1b754b1b08\",\n            \"name\": \"test.csv\",\n            \"fileType\": \"csv\"\n            },\n            {\n            \"type\": \"protocolTemplate\",\n            \"protocolUuid\": \"3e5c0ef0-a434-43a4-be7b-43c531abf680\"\n            }\n        ]\n        }\n\n ```\n\nValidation notes: provide at least one of name, hrid, uuid; provide at least one of contentToAppend, contentToReplace, contentToHead.\n\nProvide one of name, uuid, or hrid and at least one of contentToAppend, contentToReplace, or contentToHead. contentType defaults to text and supports image and json payloads.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "contentType": {
                    "type": "string",
                    "enum": [
                      "text",
                      "image",
                      "json"
                    ]
                  },
                  "contentToAppend": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToReplace": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToHead": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "start_date": {
                    "type": "string"
                  },
                  "end_date": {
                    "type": "string"
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/documentation/write": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Write To A Documentation",
        "description": "This endpoint allows users to append the `contentType`, using `contentToAppend`, replace using `contentToReplace`, and add to the head using `contentToHead`to the protocol.\n\nIf `contentType` is \"image\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- uuid: (String) The uuid of the image. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the image\n    \n\nIf `contentType` is \"json\", then the `contentToAppend`, `contentToReplace`, and/or `contentToHead` will need to be a JSON Object with the following properties:\n\n- elements: (array) This will serve as the base object. This array will contain all other elemennts that will be added into the documentation. Elements can either contain section, text, or file json objects as described below\n    \n\nHere are the structure of each element object. Currently only sections and texts are supported\n\n- type: (String) The identifier of what this type this JSON object will be. Currently supports \"text\", \"section\", \"text\"\n    \n\nSection type only :\n\n- items: (array) An array of elements that will be embedded within a section. Note nested sections are not allowed\n    \n\nText type only:\n\n- content: (string) The text to be added in\n    \n- headers : (string) What header to use for the text. Currently supports \"h1\", \"h2', \"h3\", \"h4\", \"h5\", \"h6\". (Optional)\n    \n- bold : (boolean) Add bold formatting to the text) (Optional)\n    \n- italics : (boolean) Add italics formatting to the text (Optional)\n    \n- underline : (boolean) Add underline formatting to the text (Optional)\n    \n- strikethrough: (boolean) Add strikethroughformatting to the text (Optional)\n    \n\nFile Type only\n\n- uuid: (String) The uuid of the file. This can be found using after uploading the file using the [https://new.scispot.io/files/store](https://new.scispot.io/files/store)  \n    endpoint.\n    \n- name: (String) The name of the file, eg. \"file.csv\"\n    \n- fileType: (String) The type of the file, eg. \"csv\"\n    \n\nExample of a valid JSON for contentType \"json\":\n\n``` json\n{\n        \"elements\": [\n            {\n            \"type\": \"section\",\n            \"items\": [\n                {\n                \"type\": \"text\",\n                \"header\": \"h3\",\n                \"bold\": true,\n                \"italics\": true\n                \"content\": \"This is the title of the section\"\n                },\n                {\n                \"type\": \"text\",\n                \"content\": \"This is the content of my section\"\n                }\n            ]\n            },\n            {\n            \"type\": \"text\",\n            \"content\": \"Some text outside the section\"\n            },\n            {\n            \"type\": \"file\",\n            \"uuid\": \"e1962cf0-e905-4111-8ed2-3c1b754b1b08\",\n            \"name\": \"test.csv\",\n            \"fileType\": \"csv\"\n            }\n\n        ]\n        }\n\n ```\n\nValidation notes: provide at least one of name, hrid, uuid; provide at least one of contentToAppend, contentToReplace, contentToHead.\n\nProvide one of name, uuid, or hrid and at least one of contentToAppend, contentToReplace, or contentToHead. contentType defaults to text and supports image and json payloads.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "contentType": {
                    "type": "string",
                    "enum": [
                      "text",
                      "image",
                      "json"
                    ]
                  },
                  "contentToAppend": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToReplace": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "contentToHead": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "start_date": {
                    "type": "string"
                  },
                  "end_date": {
                    "type": "string"
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/protocol/add-labsheet": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Add A Labsheet To A Protocol",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "barcodeList": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "batch": {
                    "type": "string"
                  },
                  "idType": {
                    "type": "string",
                    "enum": [
                      "ID",
                      "ID_BARCODE",
                      "uuid"
                    ]
                  },
                  "attachTo": {
                    "type": "string",
                    "enum": [
                      "first",
                      "last",
                      "new"
                    ]
                  },
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "items"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "304": {
            "description": "Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Error"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nTarget page is identified by one of name, uuid, or hrid. Service can also use barcodeList or batch in some flows.",
        "parameters": []
      }
    },
    "/labspace/experiment/add-labsheet": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Add A Labsheet To An Experiment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "barcodeList": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "batch": {
                    "type": "string"
                  },
                  "idType": {
                    "type": "string",
                    "enum": [
                      "ID",
                      "ID_BARCODE",
                      "uuid"
                    ]
                  },
                  "attachTo": {
                    "type": "string",
                    "enum": [
                      "first",
                      "last",
                      "new"
                    ]
                  },
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "items"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "304": {
            "description": "Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Error"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nTarget page is identified by one of name, uuid, or hrid. Service can also use barcodeList or batch in some flows.",
        "parameters": []
      }
    },
    "/labspace/documentation/add-labsheet": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Add A Labsheet To A Documentation",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "items": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "barcodeList": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "batch": {
                    "type": "string"
                  },
                  "idType": {
                    "type": "string",
                    "enum": [
                      "ID",
                      "ID_BARCODE",
                      "uuid"
                    ]
                  },
                  "attachTo": {
                    "type": "string",
                    "enum": [
                      "first",
                      "last",
                      "new"
                    ]
                  },
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "items"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "304": {
            "description": "Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Error"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nTarget page is identified by one of name, uuid, or hrid. Service can also use barcodeList or batch in some flows.",
        "parameters": []
      }
    },
    "/labspace/protocol/update-step": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Update Protocol Steps",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "stepsToUpdate": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "position": {
                          "type": "integer",
                          "minimum": 1
                        },
                        "data": {
                          "type": "string"
                        },
                        "checked": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "position"
                      ],
                      "additionalProperties": true
                    },
                    "minItems": 1
                  }
                },
                "required": [
                  "stepsToUpdate"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.",
        "parameters": []
      }
    },
    "/labspace/protocol/attach-image": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Attach Image to Protocol",
        "description": "Embeds an image — already uploaded to the labspace S3 bucket — into a Protocol, Experiment, or Documentation page by generating an XML tag and applying it at the chosen position.\n\nValidation notes: provide at least one of name, hrid, uuid.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "image_uuid": {
                    "type": "string"
                  },
                  "image_mime_type": {
                    "type": "string"
                  },
                  "image_name": {
                    "type": "string"
                  },
                  "position": {
                    "type": "string",
                    "enum": [
                      "append",
                      "prepend",
                      "replace"
                    ]
                  }
                },
                "required": [
                  "image_uuid"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "image_uuid": {
                      "type": "string"
                    },
                    "extension": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "position": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/experiment/attach-image": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Attach Image to Experiment",
        "description": "Embeds an image — already uploaded to the labspace S3 bucket — into a Protocol, Experiment, or Documentation page by generating an XML tag and applying it at the chosen position.\n\nValidation notes: provide at least one of name, hrid, uuid.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "image_uuid": {
                    "type": "string"
                  },
                  "image_mime_type": {
                    "type": "string"
                  },
                  "image_name": {
                    "type": "string"
                  },
                  "position": {
                    "type": "string",
                    "enum": [
                      "append",
                      "prepend",
                      "replace"
                    ]
                  }
                },
                "required": [
                  "image_uuid"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "image_uuid": {
                      "type": "string"
                    },
                    "extension": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "position": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/documentation/attach-image": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Update"
        ],
        "summary": "Attach Image to Documentation",
        "description": "Embeds an image — already uploaded to the labspace S3 bucket — into a Protocol, Experiment, or Documentation page by generating an XML tag and applying it at the chosen position.\n\nValidation notes: provide at least one of name, hrid, uuid.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "hrid": {
                    "type": "string"
                  },
                  "image_uuid": {
                    "type": "string"
                  },
                  "image_mime_type": {
                    "type": "string"
                  },
                  "image_name": {
                    "type": "string"
                  },
                  "position": {
                    "type": "string",
                    "enum": [
                      "append",
                      "prepend",
                      "replace"
                    ]
                  }
                },
                "required": [
                  "image_uuid"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "image_uuid": {
                      "type": "string"
                    },
                    "extension": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "position": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/fetch": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Find"
        ],
        "summary": "Find A Labspace",
        "description": "Get metadata about a labspace",
        "parameters": [
          {
            "name": "labspace",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the labspace.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/folder/fetch": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Find"
        ],
        "summary": "Find A Folder",
        "description": "Retrieve information about a specific folder\n\nValidation notes: provide at least one of name, uuid.\n\nProvide at least one identifier query parameter. If name is used and duplicates exist, the service can return a conflict.",
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the folder"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The uuid of the folder"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/protocol/fetch": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Find"
        ],
        "summary": "Find A Protocol",
        "description": "Retrieve information about a specific protocol\n\nNOTE: It is necessary to provide one of the following identifiers: **hrid**, **name** or **uuid**\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one identifier query parameter. If name is used and duplicates exist, the service can return a conflict.",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the protocol"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/experiment/fetch": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Find"
        ],
        "summary": "Find An Experiment",
        "description": "Retrieve information about a specific experiment\n\nNOTE: It is necessary to provide one of the following identifiers: **hrid**, **name** or **uuid**\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one identifier query parameter. If name is used and duplicates exist, the service can return a conflict.",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the experiment"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/documentation/fetch": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Find"
        ],
        "summary": "Find A Documentation",
        "description": "Retrieve information about a specific documentation page\n\nNOTE: It is necessary to provide one of the following identifiers: **hrid**, **name** or **uuid**\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one identifier query parameter. If name is used and duplicates exist, the service can return a conflict.",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the documentation page"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Labspaces",
        "description": "This endpoint retrieves a list of labspaces",
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/folder/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Folders",
        "description": "Get a list of folders inside a labspace.\n\nValidation notes: provide at least one of labspace, location.",
        "parameters": [
          {
            "name": "location",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The location path from where the folders will be fetched. You can seperate the labspace,folders and subfolders by colon(:). It always starts from labspace name.\n  For Example: Labspace_Name:Folder_Name:Subfolder_Name"
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The index of desired pages. For example setting page as 2 and pageSize as 10 fetches items 11-20. Defaults to 1"
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The number of items to be fetched. Defaults to 5, maximum value 1000"
          },
          {
            "name": "archived",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "\"true\" or \"false. If \"true\" will filter results for only archived folders, if \"false\", will fitler results for non archived folders. Default \"false'. (Optional)"
          },
          {
            "name": "labspace",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The labspace name. Either labspace or location can be provided."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/protocol/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Protocols",
        "description": "Get a list of protocols inside a location(path of your labspace,folder or subfolder) based on the provided query parameters.\n\n**NOTE:**\n\n- It is necessary to provide the location. location always starts from labspace name.\n    \n- Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of labspace, folder.",
        "parameters": [
          {
            "name": "location",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The location path from where the protocols will be fetched. You can seperate the labspace,folders and subfolders by colon(:). It always starts from labspace name.\n  For Example: Labspace_Name:Folder_Name:Subfolder_Name",
            "required": true
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The index of desired pages. For example setting page as 2 and pageSize as 10 fetches items 11-20.",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The number of items to be fetched.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/experiment/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Experiments",
        "description": "Get a list of experiments pages inside a location path(labspace,folder or subfolder separated by colon(:)) based on the provided query parameters.\n\n**NOTE:**\n\n- It is necessary to provide the location. location always starts from labspace name.\n    \n- Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of labspace, folder.",
        "parameters": [
          {
            "name": "location",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The location path from where the protocols will be fetched. You can seperate the labspace,folders and subfolders by colon(:). It always starts from labspace name.\n  For Example: Labspace_Name:Folder_Name:Subfolder_Name.",
            "required": true
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": " The index of desired pages. For example setting page as 2 and pageSize as 10 fetches items 11-20.",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The number of items to be fetched.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/documentation/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Documentations",
        "description": "Get a list of documentation pages inside a location path(labspace,folder or subfolder separated by colon(:)) based on the provided query parameters.\n\n**NOTE:**\n\n- It is necessary to provide the location. location always starts from labspace name.\n    \n- Labspace, Folder, and Subfolder names should not contain the colon (`:`) character.\n\nValidation notes: provide at least one of labspace, folder.",
        "parameters": [
          {
            "name": "location",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The location path from where the protocols will be fetched. You can seperate the labspace,folders and subfolders by colon(:). It always starts from labspace name.\n  For Example: Labspace_Name:Folder_Name:Subfolder_Name.",
            "required": true
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": " The index of desired pages. For example setting page as 2 and pageSize as 10 fetches items 11-20.",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The number of items to be fetched.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/protocol/templates/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - ELN API - List"
        ],
        "summary": "List Protocol Templates",
        "description": "This request is to fetch a list of protocol templates.",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer"
            },
            "required": true,
            "description": "\n specifies the page number to start the fetch from",
            "example": "1"
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer"
            },
            "required": true,
            "description": "Max 1000\nspecifies the number of results per page",
            "example": "10"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "customer_total": {
                      "type": "number"
                    },
                    "originals_total": {
                      "type": "number"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/protocol/delete": {
      "delete": {
        "tags": [
          "Scispot API - ELN API - Delete"
        ],
        "summary": "Delete Protocol",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the protocol"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one of name, uuid, or hrid. Success body is {\"success\": true}."
      }
    },
    "/labspace/experiment/delete": {
      "delete": {
        "tags": [
          "Scispot API - ELN API - Delete"
        ],
        "summary": "Delete Experiment",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the protocol"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one of name, uuid, or hrid. Success body is {\"success\": true}."
      }
    },
    "/labspace/documentation/delete": {
      "delete": {
        "tags": [
          "Scispot API - ELN API - Delete"
        ],
        "summary": "Delete Documentation",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the page"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The name of the documentation"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, hrid, uuid.\n\nProvide at least one of name, uuid, or hrid. Success body is {\"success\": true}."
      }
    },
    "/labspace/folder/fetch-permissions": {
      "get": {
        "tags": [
          "Scispot API - ELN API - Permissions (Super Admin Only)"
        ],
        "summary": "List Permissions",
        "description": "This endpoint allows you to list permissions to a private folder in the labspace.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- The folder must already be privated\n\nValidation notes: provide at least one of uuid, location.\n\nProvide one of uuid or location. Requires Super Admin API token and a private folder.",
        "parameters": [
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The uuid of the folder. If both location and uuid are provided uuid is priortized over location"
          },
          {
            "name": "location",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The location path from where the folders will be fetched. You can seperate the labspace,folders and subfolders by colon(:). It always starts from labspace name.\n  For Example: Labspace_Name:Folder_Name:Subfolder_Name"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "users": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "email": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    },
                    "teams": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        }
      }
    },
    "/labspace/folder/add-permissions": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Permissions (Super Admin Only)"
        ],
        "summary": "Add Permissions",
        "description": "This endpoint allows you to add permissions to a private folder in the labspace.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- The folder must already be privated\n    \n- You cannot add a user who already has permission to a private folder. (To edit a permission you must delete the user first and then add them back with the correct permission)\n\nValidation notes: provide at least one of users, teams; provide at least one of uuid, location.\n\nProvide uuid or location. teams is not supported by the current service. Requires Super Admin and a private folder.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uuid": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "users": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "email": {
                          "type": "string"
                        },
                        "permission": {
                          "type": "string",
                          "enum": [
                            "Viewer",
                            "Editor"
                          ]
                        }
                      },
                      "required": [
                        "email"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "users"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/folder/lock": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Permissions (Super Admin Only)"
        ],
        "summary": "Lock Folder",
        "description": "This endpoint allows you to add permissions to a private folder in the labspace.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- The folder must already be privated\n    \n- You cannot add a user who already has permission to a private folder. (To edit a permission you must delete the user first and then add them back with the correct permission)\n\nValidation notes: provide at least one of uuid, location.\n\nProvide uuid or location. Requires Super Admin API token.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uuid": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/folder/unlock": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Permissions (Super Admin Only)"
        ],
        "summary": "Unlock Folder",
        "description": "This endpoint allows you to add permissions to a private folder in the labspace.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- The folder must already be privated\n    \n- You cannot add a user who already has permission to a private folder. (To edit a permission you must delete the user first and then add them back with the correct permission)\n\nValidation notes: provide at least one of uuid, location.\n\nProvide uuid or location. Requires Super Admin API token.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uuid": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labspace/folder/remove-permissions": {
      "post": {
        "tags": [
          "Scispot API - ELN API - Permissions (Super Admin Only)"
        ],
        "summary": "Remove Permissions",
        "description": "This endpoint allows you to add permissions to a private folder in the labspace.\n\n#### **Notes**:\n\n- The owner of the API token must have Super Admin permissions\n    \n- The folder must already be privated\n    \n- You cannot remove a user who does not have any permission to a private folder\n\nValidation notes: provide at least one of users, teams; provide at least one of uuid, location.\n\nProvide uuid or location. teams is not supported by the current service. Requires Super Admin and a private folder.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "uuid": {
                    "type": "string"
                  },
                  "location": {
                    "type": "string"
                  },
                  "users": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "email": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "email"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "users"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/manifest/create": {
      "post": {
        "tags": [
          "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API"
        ],
        "summary": "Create A Manifest",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "template": {
                    "type": "string"
                  },
                  "plates": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "labsheets": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "labsheet": {
                                "type": "string"
                              },
                              "idType": {
                                "type": "string",
                                "enum": [
                                  "ID",
                                  "ID_BARCODE",
                                  "UUID",
                                  "ROW_UUID"
                                ]
                              },
                              "items": {
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": true
                                }
                              }
                            },
                            "additionalProperties": true
                          }
                        }
                      },
                      "additionalProperties": true
                    }
                  },
                  "autoHrid": {
                    "type": "boolean"
                  },
                  "hrid": {
                    "type": "string"
                  }
                },
                "required": [
                  "name",
                  "template",
                  "plates"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "uuid": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/manifest/fetch": {
      "get": {
        "tags": [
          "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API"
        ],
        "summary": "Find Manifest By Human Readable ID",
        "description": "Retrieve information about a specific manifest\n\nValidation notes: provide at least one of hrid, uuid, barcode.\n\nLookup accepts one of hrid, uuid, or barcode. Missing/not-found identifiers surface as service errors in API-v2.",
        "parameters": [
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Human Readable Id of the manifest"
          },
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the manfiest (optional parameter)"
          },
          {
            "name": "barcode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "barcode of the manfiest (optional parameter)"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "template": {
                      "type": "string"
                    },
                    "plates": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "data": {
                      "type": "object",
                      "properties": {
                        "headers": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        },
                        "rows": {
                          "type": "array",
                          "items": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        }
                      },
                      "additionalProperties": true
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/manifest/fetch-metadata": {
      "get": {
        "tags": [
          "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API"
        ],
        "summary": "Get Manifest Metadata",
        "description": "Fetch metadata about a manifest through either the UUID, HRID, or the Barcode.\n\nValidation notes: provide at least one of hrid, uuid, barcode.\n\nLookup accepts one of hrid, uuid, or barcode. Missing/not-found identifiers surface as service errors in API-v2.",
        "parameters": [
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "UUID of the manifest, or",
            "example": "Type: String"
          },
          {
            "name": "hrid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "HRID of the manifest, or",
            "example": "Type: String"
          },
          {
            "name": "barcode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Barcode value of the manifest",
            "example": "Type: String"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string"
                    },
                    "template": {
                      "type": "string"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "hrid": {
                      "type": "string"
                    },
                    "barcode": {
                      "type": "string"
                    },
                    "emptySpaces": {
                      "type": "string"
                    },
                    "lastUpdate": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/manifest/update": {
      "post": {
        "tags": [
          "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API"
        ],
        "summary": "Update A Manifest",
        "description": "This endpoint allows users to update an existing manifest, these can include sample assignments, labeling modifications, and tag management across multiple well positions within a single manifest.\n\n### Update Operations\n\nThis endpoint supports several types of operations that users can perform on manifest wells. Each operation requires specific input parameters depending on the intended action.\n\n**Assign Operations** must be included under the `wells` array within the plate object. These operations add or update sample assignments, labels, and tags to specific well positions.\n\n**Remove Operations** must be included under the `removeFromWells` array within the plate object. These operations clear existing sample assignments, labels, or tags from specific well positions.\n\n### Assignment\n\nAssign operations allow users to add or update well assignments including samples, labels, and tags. Multiple assignment types can be combined in a single well object.\n\n```\n{\n  \"position\": \"A1\",\n  \"sample\" : {\n   \"id\": \"SM000001\",\n   \"labsheet\": \"Sample Manager\"\n  },\n  \"tags\": [\"PASSED_QC\"],\n  \"label\": \"SAMPLE\"\n}\n\n ```\n\n**position** (string, required): The specified well position\n\n**sample** (object, required): A dictionary object containing the id of the sample to be assigned and the corresponding origin labsheet.\n\n**tags** (array, required): An array of string values representing custom metadata tags to associate with the well position.\n\n**label** (string, required): When assigning a label, valid options include one of \"SAMPLE\", \"POS_CONTROL\", \"NEG_CONTROL\", \"BLANK\", \"STANDARD\" or left as an empty \"\" if no label should be assigned.\n\n### Removal\n\nRemove operations allow users to clear existing assignments from well positions. Users can selectively remove samples, labels, or tags from specific wells by specifying which fields to clear.\n\n```\n\"removeFromWells\" : [\n {\n   \"position\" : \"B1\",\n   \"fields\" : [\"LABEL\"]\n },\n {\n   \"position\" : \"A4\",\n   \"fields\" : [\"SAMPLE\"]\n }\n]\n\n ```\n\n**position** (string, required): The specified well position.\n\n**fields** (array, required): An array of strings specifying which types of assignments to remove from the well position. Valid options include \"SAMPLE\", \"LABEL\", \"TAGS\".\n\nProvide one of hrid or uuid. plate must contain wells and/or removeFromWells. Position format must match the manifest plate/box layout.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "hrid": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "plate": {
                    "type": "object",
                    "properties": {
                      "wells": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "position": {
                              "type": "string"
                            },
                            "tags": {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "label": {
                              "type": "string",
                              "enum": [
                                "",
                                "SAMPLE",
                                "POS_CONTROL",
                                "NEG_CONTROL",
                                "BLANK",
                                "STANDARD"
                              ]
                            },
                            "sample": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "labsheet": {
                                  "type": "string"
                                }
                              },
                              "additionalProperties": true
                            }
                          },
                          "required": [
                            "position",
                            "tags",
                            "label",
                            "sample"
                          ],
                          "additionalProperties": true
                        }
                      },
                      "removeFromWells": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "position": {
                              "type": "string"
                            },
                            "fields": {
                              "type": "array",
                              "items": {
                                "type": "string",
                                "enum": [
                                  "SAMPLE",
                                  "TAGS",
                                  "LABEL"
                                ]
                              },
                              "minItems": 1
                            }
                          },
                          "required": [
                            "position",
                            "fields"
                          ],
                          "additionalProperties": true
                        }
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "required": [
                  "plate"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "data": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "updatedManifest": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        }
      }
    },
    "/manifest/assign-to-location": {
      "post": {
        "tags": [
          "Scispot API - MANIFESTS (PLATES, BOXES, RACKS) API"
        ],
        "summary": "Assign A Manifest To A Location",
        "description": "Moves an **assay plate (manifest)** into a storage location given a **location id.** If the storage location is a rack, you may also specify the desired position of assignment within that rack.\n\nProvide one of hrid or uuid. position is optional and only validated for rack destinations.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "hrid": {
                    "type": "string"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "locationId": {
                    "type": "string"
                  },
                  "position": {
                    "type": "string"
                  }
                },
                "required": [
                  "locationId"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "error": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string",
                      "example": "Validation error"
                    }
                  }
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        }
      }
    },
    "/sequences": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Create a Sequence",
        "description": "This API endpoint can be used to create a sequence of any type the scispot supports:\n\n- DNA sequence\n    \n- RNA sequence\n    \n- Mixed DNA and RNA sequence\n    \n- Oligo\n    \n- Protein\n\nIn addition to name, provide sequence or sequenceData. type is optional and defaults to DNA.\n\nRequest body must include sequence content using either `sequence` or `sequenceData`.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  },
                  "sequence": {
                    "type": "string"
                  },
                  "sequenceData": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "circular": {
                    "type": "boolean"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "annotations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "start": {
                          "type": "integer"
                        },
                        "end": {
                          "type": "integer"
                        },
                        "color": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string"
                        },
                        "forward": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "name",
                        "start",
                        "end"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "name"
                ],
                "additionalProperties": true,
                "anyOf": [
                  {
                    "required": [
                      "sequence"
                    ]
                  },
                  {
                    "required": [
                      "sequenceData"
                    ]
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      },
      "get": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Fetch List of Sequences by Pagination",
        "description": "This endpoint allows the user to fetch a list of sequences through pagination\n\nWithout name, returns paginated list {items,total,success}; with name, returns {sequence,success}. pageSize defaults to 20 and page defaults to 0.",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer"
            },
            "description": "page number of fetched sequences",
            "example": "1"
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer"
            },
            "description": "number of fetched sequences per page",
            "example": "25"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Optional sequence name. If provided, returns a single matching sequence; otherwise returns a paginated list."
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "number"
                    },
                    "sequence": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        }
      }
    },
    "/sequences/bulk": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Create Sequences in Bulk",
        "description": "Create sequences of any type in bulk. This endpoint supports all the sequence types as the /sequences endpoint with similar syntax inside the sequence array.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "sequences": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string"
                        },
                        "sequence": {
                          "type": "string"
                        },
                        "sequenceData": {
                          "type": "string"
                        },
                        "description": {
                          "type": "string"
                        },
                        "circular": {
                          "type": "boolean"
                        },
                        "uuid": {
                          "type": "string"
                        },
                        "annotations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "name": {
                                "type": "string"
                              },
                              "start": {
                                "type": "integer"
                              },
                              "end": {
                                "type": "integer"
                              },
                              "color": {
                                "type": "string"
                              },
                              "type": {
                                "type": "string"
                              },
                              "forward": {
                                "type": "boolean"
                              }
                            },
                            "required": [
                              "name",
                              "start",
                              "end"
                            ],
                            "additionalProperties": true
                          }
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "additionalProperties": true,
                      "anyOf": [
                        {
                          "required": [
                            "sequence"
                          ]
                        },
                        {
                          "required": [
                            "sequenceData"
                          ]
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "sequences"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "sequences": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "name": {
                            "type": "string"
                          },
                          "success": {
                            "type": "boolean"
                          },
                          "uuid": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          },
                          "message": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/sequences/{uuid}/annotations": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Add annotations to a Sequence",
        "description": "This endpoint allows the user to add annotations to an existing sequence\n\nProvide either annotations (array) or annotation (single object). Annotation coordinates are 0-based inclusive and end must be >= start.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "annotations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "start": {
                          "type": "integer"
                        },
                        "end": {
                          "type": "integer"
                        },
                        "color": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string"
                        },
                        "forward": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "name",
                        "start",
                        "end"
                      ],
                      "additionalProperties": true
                    }
                  },
                  "annotation": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "start": {
                        "type": "integer"
                      },
                      "end": {
                        "type": "integer"
                      },
                      "color": {
                        "type": "string"
                      },
                      "type": {
                        "type": "string"
                      },
                      "forward": {
                        "type": "boolean"
                      }
                    },
                    "required": [
                      "name",
                      "start",
                      "end"
                    ],
                    "additionalProperties": true
                  }
                },
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "added": {
                      "type": "integer"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        }
      }
    },
    "/sequences/{uuid}": {
      "get": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Fetch Sequence By UUID",
        "description": "This endpoint allows the user to fetch a sequence by its UUID",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "sequence": {
                      "type": "object",
                      "additionalProperties": true
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Update Sequence",
        "description": "This endpoint updates the sequences that denoted by the uuid from the url. The payload must contain a name, type and sequence even if it is the same as before the update.\n\nPath uuid identifies the sequence. In addition to name, provide sequence or sequenceData. type is optional.\n\nRequest body must include sequence content using either `sequence` or `sequenceData`.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  },
                  "sequence": {
                    "type": "string"
                  },
                  "sequenceData": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "circular": {
                    "type": "boolean"
                  },
                  "uuid": {
                    "type": "string"
                  },
                  "annotations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "start": {
                          "type": "integer"
                        },
                        "end": {
                          "type": "integer"
                        },
                        "color": {
                          "type": "string"
                        },
                        "type": {
                          "type": "string"
                        },
                        "forward": {
                          "type": "boolean"
                        }
                      },
                      "required": [
                        "name",
                        "start",
                        "end"
                      ],
                      "additionalProperties": true
                    }
                  }
                },
                "required": [
                  "name"
                ],
                "additionalProperties": true,
                "anyOf": [
                  {
                    "required": [
                      "sequence"
                    ]
                  },
                  {
                    "required": [
                      "sequenceData"
                    ]
                  }
                ]
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "uuid": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Delete Sequence",
        "description": "Deletes the sequences related to the uuid from the url.",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                },
                "example": {
                  "success": true,
                  "uuid": "<uuid>",
                  "deleted": true
                }
              }
            },
            "description": "Successful response"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/sequences/{uuid}/labsheet-links": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Add Sequence to Labsheet Row",
        "description": "This endpoint will link a sequence to a labsheet row in the sequence column based on the sequence uuid in the url.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labsheet": {
                    "type": "string"
                  },
                  "id": {
                    "type": "string"
                  },
                  "sequenceColumn": {
                    "type": "string"
                  }
                },
                "required": [
                  "labsheet",
                  "id"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "sequenceUuid": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/sequences/{uuid}/labspace-links": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Add sequence to Labspace Page",
        "description": "Add the sequence from the url to the labspace page from the payload",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "pageUuid": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  },
                  "position": {
                    "type": "string",
                    "enum": [
                      "append",
                      "prepend",
                      "replace"
                    ]
                  }
                },
                "required": [
                  "pageUuid"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/sequence/new": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Create a DNA Sequence (Deprecated)",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "sequenceData": {
                    "type": "string"
                  },
                  "proteinSequenceData": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  },
                  "circular": {
                    "type": "boolean"
                  },
                  "size": {
                    "type": "integer"
                  },
                  "cutsites": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "orfs": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "primers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "guides": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "annotations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                },
                "additionalProperties": true,
                "required": [
                  "name",
                  "sequenceData"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "uuid": {
                      "type": "string"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": [],
        "description": "\n\nAPI-v2 controller requires name and sequenceData; legacy service can also accept proteinSequenceData."
      }
    },
    "/sequence/update": {
      "post": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Update Existing DNA Sequence (Deprecated)",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "sequenceData": {
                    "type": "string"
                  },
                  "proteinSequenceData": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  },
                  "circular": {
                    "type": "boolean"
                  },
                  "size": {
                    "type": "integer"
                  },
                  "cutsites": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "orfs": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "primers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "guides": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "annotations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  }
                },
                "additionalProperties": true,
                "required": [
                  "name"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/sequence/fetch": {
      "get": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Find a DNA Sequence (Deprecated)",
        "parameters": [
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "uuid of the sequence"
          },
          {
            "name": "name",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "name of the sequence"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Conflict"
                }
              }
            }
          }
        },
        "description": "\n\nValidation notes: provide at least one of name, uuid.\n\nProvide uuid or name. Success is the sequence object plus success:true; internal index/type/Id/_class fields are stripped where present."
      }
    },
    "/sequence/fetch-list": {
      "get": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "List DNA Sequences (Deprecated)",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The index of desired pages.",
            "required": true
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The number of items to be fetched.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "total": {
                      "type": "integer"
                    },
                    "success": {
                      "type": "boolean"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/location/list": {
      "get": {
        "tags": [
          "Scispot API - LOCATIONS API"
        ],
        "summary": "Fetch Root Locations",
        "description": "Retrieve list of all root locations.",
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "locations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "uuid": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/location/list-sublocations-by-id": {
      "get": {
        "tags": [
          "Scispot API - LOCATIONS API"
        ],
        "summary": "Fetch Sub Locations by Location Id",
        "description": "Given a **parent location UUID**, lists everything directly inside—child locations, storage racks, manifests (plates), and sample inventory rows.",
        "parameters": [
          {
            "name": "uuid",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "parent location to drill down into.",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "sublocations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "racks": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "manifests": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    },
                    "samples": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": true
                      }
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          }
        }
      }
    },
    "/location/create": {
      "post": {
        "tags": [
          "Scispot API - LOCATIONS API"
        ],
        "summary": "Create Locations in Bulk",
        "description": "This API endpoint is used to create single locations or locations in bulk. This is an async process, so the return message will only return the request ID for the async ticket. In order to check the creation status of this endpoint, use the /location/create/status endpoint with the request ID as the parameter.\n\nLocation Types supported by this endpoint includes\n\n- Room\n    \n- Shelf\n    \n- Freezer\n    \n- Custom locations\n    \n\nLocation Types that are not currently supported via this API\n\n- Racks\n    \n- Manifest (Use the \"Assign Manifest To A Location\" endpoint to assign manifest locations)\n    \n\nThere is a heirarchy for these locations where some location types cannot be created as a child of another location type.\n\nRoot Locations: Rooms, Shelves, Freezers, Custom Locations\n\nWithin Rooms: Freezers, Shelves, Custom Locations\n\nWithin Freezers: Shelves, Custom Locations\n\nWithin Shelves: Custom Locations\n\nWithin Custom Locations: Shelves, Custom Locations\n\nCreates up to 20 location nodes including children. Maximum nested depth is 3. RACK cannot be created through this endpoint. FREEZER requires temperature and temperatureUnit; CUSTOM requires customTypeName.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "locations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string"
                        },
                        "locationType": {
                          "type": "string"
                        },
                        "idRef": {
                          "type": "string"
                        },
                        "children": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": true
                          }
                        },
                        "temperature": {
                          "type": "string"
                        },
                        "temperatureUnit": {
                          "type": "string"
                        },
                        "customTypeName": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name",
                        "locationType"
                      ],
                      "additionalProperties": true
                    },
                    "maxItems": 20
                  }
                },
                "required": [
                  "locations"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/location/create/status": {
      "get": {
        "tags": [
          "Scispot API - LOCATIONS API"
        ],
        "summary": "Get Create Location Status",
        "description": "This endpoint is used in conjunction with the location/create endpoint that creates locations in an async manner. This endpoint is used to check the status of the async request created by the location/create endpoint.\n\nTo use this endpoint, add the requestId to the params when calling this endpoint, and a response will be returned with the status of the create location request. with the status, and result of the create location request.",
        "parameters": [
          {
            "name": "requestId",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "This is the request id from the response of the location/create endpoint. ",
            "example": "<requestId>",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "requestId": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    },
                    "result": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Bad request"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          }
        }
      }
    },
    "/labflows/list-samples": {
      "get": {
        "tags": [
          "Scispot API - LABFLOWS API"
        ],
        "summary": "List all Samples in a Labflow",
        "parameters": [
          {
            "name": "labflowId",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Id of the labflow",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "labflowId": {
                      "type": "string"
                    },
                    "labflowName": {
                      "type": "string"
                    },
                    "totalSamples": {
                      "type": "integer"
                    },
                    "sampleIds": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        }
      }
    },
    "/labflows/add-test": {
      "post": {
        "tags": [
          "Scispot API - LABFLOWS API"
        ],
        "summary": "Add New Test in Labflow",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labflowId": {
                    "type": "string"
                  },
                  "protocoltemplateId": {
                    "type": "string"
                  }
                },
                "required": [
                  "labflowId",
                  "protocoltemplateId"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "performTestStepId": {
                      "type": "string"
                    },
                    "protocoltemplateId": {
                      "type": "string"
                    },
                    "performTestStep": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/labflows/link-samples-to-test": {
      "post": {
        "tags": [
          "Scispot API - LABFLOWS API"
        ],
        "summary": "Link Samples to Test in Labflow",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "labflowId": {
                    "type": "string"
                  },
                  "protocoltemplateId": {
                    "type": "string"
                  },
                  "sampleUuids": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "sampleEntityUuid": {
                    "type": "string"
                  }
                },
                "required": [
                  "labflowId",
                  "protocoltemplateId",
                  "sampleUuids"
                ],
                "additionalProperties": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    },
                    "performTestStepId": {
                      "type": "string"
                    },
                    "protocoltemplateId": {
                      "type": "string"
                    },
                    "samplesLinked": {
                      "type": "integer"
                    },
                    "testResults": {
                      "type": "object",
                      "additionalProperties": true
                    }
                  },
                  "additionalProperties": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "parameters": []
      }
    },
    "/webhook/custom": {
      "post": {
        "tags": [
          "Scispot API - WEBHOOK API"
        ],
        "summary": "Push Webhook to Scispot",
        "description": "Push a JSON payload to Scispot. Depending on the \"Scispot-Event-Type\", automatic actions can be performed in Scispot.\n\nThe entire JSON body is persisted as webhook payload and may trigger automations based on the optional Scispot-Event-Type header. In API-v2 mode, authentication is required.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {}
              }
            }
          },
          "required": true
        },
        "parameters": [
          {
            "name": "Scispot-Event-Type",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "description": "Tag describing the type of event that triggered the webhook."
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean"
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": true
                }
              }
            },
            "description": "OK",
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            }
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          }
        },
        "servers": [
          {
            "url": "https://events.scispot.io",
            "description": "Scispot Events"
          }
        ]
      }
    },
    "/sequences/{uuid}/annotations/{annotationId}": {
      "delete": {
        "tags": [
          "Scispot API - SEQUENCE API"
        ],
        "summary": "Delete Annotations",
        "description": "This endpoint allows the user to delete specific annotations from existing sequences",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "annotationId",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Type": {
                "schema": {
                  "type": "string",
                  "example": "application/json"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                },
                "example": {
                  "uuid": "{uuid}",
                  "annotationId": "{annotationId}",
                  "removed": true,
                  "success": true
                }
              }
            },
            "description": "Successful response"
          },
          "401": {
            "description": "Invalid Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Invalid Authentication Token"
                }
              }
            }
          },
          "403": {
            "description": "Missing Authentication Token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Missing Authentication Token"
                }
              }
            }
          },
          "500": {
            "description": "Operation failed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Operation failed"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Not found"
                }
              }
            }
          },
          "422": {
            "description": "Validation error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": false
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "success": false,
                  "message": "Validation error"
                }
              }
            }
          }
        }
      }
    },
    "/files/store": {
      "post": {
        "servers": [
          {
            "url": "https://new.scispot.io",
            "description": "Scispot Files"
          }
        ],
        "tags": [
          "Scispot API - FILES API"
        ],
        "summary": "Store Files",
        "description": "Legacy file repository upload endpoint implemented in scispot-legacy-backend FileController#uploadFilesOrMedia. Requires Authorization: Bearer token. Returns an array of per-file results. `mediaUrls` is accepted by the controller but not processed. Authenticated requests with no files can return HTTP 200 with an empty array.",
        "requestBody": {
          "required": false,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    },
                    "description": "One or more files to store."
                  },
                  "mediaUrls": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "description": "Accepted by controller but ignored by current legacy implementation."
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "All files processed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "fileName": {
                        "type": "string"
                      },
                      "fileId": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "success",
                          "error"
                        ]
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "fileName": "example.pdf",
                    "fileId": "<uuid>",
                    "status": "success",
                    "message": "File uploaded successfully"
                  }
                ]
              }
            }
          },
          "400": {
            "description": "One or more files failed processing",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "fileName": {
                        "type": "string"
                      },
                      "fileId": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "success",
                          "error"
                        ]
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "fileName": "bad.pdf",
                    "status": "error",
                    "message": "Failed to process file: ..."
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Missing or invalid bearer token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "examples": {
                  "missing": {
                    "value": {
                      "error": "Missing Bearer Token"
                    }
                  },
                  "invalid": {
                    "value": {
                      "error": "Invalid Bearer Token"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "error": "Unexpected server error: <message>"
                }
              }
            }
          }
        }
      }
    },
    "/files/store-and-embed": {
      "post": {
        "servers": [
          {
            "url": "https://new.scispot.io",
            "description": "Scispot Files"
          }
        ],
        "tags": [
          "Scispot API - FILES API"
        ],
        "summary": "Upload Files And Queue Embedding",
        "description": "Legacy file upload + embedding queue endpoint implemented in scispot-legacy-backend FileController#uploadFilesAndEmbed. Requires Authorization: Bearer token. Uploads files to S3 and queues supported file types for knowledge-base embedding. `isGlobal` is interpreted as a string boolean and `fileSource` defaults to `AI Lab Drive`.\n\nSupported file extensions for embedding: pdf, docx, xlsx, xls, csv, pptx, md, txt, html, htm, json, jsonl, jpg, jpeg, png, gif, heic, heif, prism, eds, skax, edt, tif, tiff, g2i, zip, cs, c, asc, kfx2, msg, emf, cbz, pse.",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": [
                  "files"
                ],
                "properties": {
                  "files": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    },
                    "description": "One or more files to upload and embed."
                  },
                  "isGlobal": {
                    "type": "string",
                    "default": "false"
                  },
                  "fileSource": {
                    "type": "string",
                    "default": "AI Lab Drive"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "responses": {
          "200": {
            "description": "All files uploaded and queued successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "fileName": {
                        "type": "string"
                      },
                      "fileId": {
                        "type": "string"
                      },
                      "ticketId": {
                        "type": "string"
                      },
                      "status": {
                        "type": "string",
                        "enum": [
                          "success"
                        ]
                      },
                      "message": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": true
                  }
                },
                "example": [
                  {
                    "fileName": "example.pdf",
                    "fileId": "<uuid>",
                    "ticketId": "<uuid>",
                    "status": "success",
                    "message": "File uploaded successfully and queued for processing"
                  }
                ]
              }
            }
          },
          "400": {
            "description": "No files provided, unsupported file type, or one or more files failed processing. Body is either an error object or an array of per-file results.",
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "error": {
                          "type": "string"
                        }
                      },
                      "additionalProperties": true
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "fileName": {
                            "type": "string"
                          },
                          "fileId": {
                            "type": "string"
                          },
                          "status": {
                            "type": "string",
                            "enum": [
                              "success",
                              "error"
                            ]
                          },
                          "message": {
                            "type": "string"
                          },
                          "ticketId": {
                            "type": "string"
                          },
                          "errorDetail": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": true
                      }
                    }
                  ]
                },
                "example": {
                  "error": "No files provided"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid bearer token",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "examples": {
                  "missing": {
                    "value": {
                      "error": "Missing Bearer Token"
                    }
                  },
                  "invalid": {
                    "value": {
                      "error": "Invalid Bearer Token"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": true
                },
                "example": {
                  "error": "Unexpected server error: <message>"
                }
              }
            }
          }
        }
      }
    }
  },
  "security": [
    {
      "bearerAuth": []
    }
  ]
}
