openapi: 3.2.0
info:
description: Full description of Noosh API
version: '1.0'
title: Noosh API application File API
contact: {}
x-api-evangelist-note: Harvested verbatim from https://api.noosh.com/api/swagger.json on 2026-08-13. The published document declares host example.com:80 and basePath /v1, which are build-time placeholders (the same document is mirrored by APIs.guru with host noosh.local:80). host has been set to api.noosh.com — the host that actually serves this document and the Swagger UI at /api/developer/index.html — and basePath removed because every path already carries its own version prefix (/v1, /1.1, /1.2, /3). The unmodified document is preserved at openapi/_original/noosh-openapi.json. Every route returns HTTP 403 to unauthenticated callers (AWS API Gateway + CloudFront), so the deployment path prefix could not be confirmed live.
servers:
- url: https://api.noosh.com
tags:
- name: File
paths:
/1.1/workgroups/{workgroup_id}/projects/{project_id}/fileTags:
get:
tags:
- File
summary: List Tags from Workgroup and Project.
description: List Tags from Workgroup and Project.
operationId: getFileTags
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileTagResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileTagResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
/1.1/workgroups/{workgroup_id}/projects/{project_id}/files:
get:
tags:
- File
summary: List Files from Project. Works for Regular and Remote Files
description: List Files from Project. Works for Regular and Remote Files
operationId: getFiles
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileListResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileListResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileListResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileListResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileListResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileListResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileListResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileListResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
post:
tags:
- File
summary: Upload File to Project.
A multipart/form-data request that accepts 2 values. "file" and "tags"
file = {the
description: 'Upload File to Project.
A multipart/form-data request that accepts 2 values. "file" and "tags"
file = {the file}
tags = {json string}, examples:
[{"tagName":"aa","isSpec":false}], Create or Use existing tag, lookup done by name
[{"tagId":9458887,"isSpec":true}], Existing Spec Tag
[{"tagId":5003785,"isSpec":false}], Existing Tag'
operationId: uploadFile
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
requestBody:
content:
multipart/form-data:
schema:
type: string
format: binary
/1.1/workgroups/{workgroup_id}/projects/{project_id}/files/{file_id}:
get:
tags:
- File
summary: Get File from Project. Works for Regular and Remote Files
description: Get File from Project. Works for Regular and Remote Files
operationId: getFile
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
- name: file_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
/1.1/workgroups/{workgroup_id}/projects/{project_id}/filesByRole:
post:
tags:
- File
summary: Upload File to Project.
A multipart/form-data request that accepts 2 values. "file" and "tags"
file = {the
description: 'Upload File to Project.
A multipart/form-data request that accepts 2 values. "file" and "tags"
file = {the file}
tags = {json string}, examples:
[{"tagName":"aa","isSpec":false}], Create or Use existing tag, lookup done by name
[{"tagId":9458887,"isSpec":true}], Existing Spec Tag
[{"tagId":5003785,"isSpec":false}], Existing Tag'
operationId: uploadFile
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
requestBody:
content:
multipart/form-data:
schema:
type: string
format: binary
/1.2/workgroups/{workgroup_id}/projects/{project_id}/filesByRole:
post:
tags:
- File
summary: 'Upload File to Project With Notification.
A multipart/form-data request that accepts 2 values. "file" and "tags" '
description: 'Upload File to Project With Notification.
A multipart/form-data request that accepts 2 values. "file" and "tags"
file = {the file}
tags = {json string}, examples:
[{"tagName":"aa","isSpec":false}], Create or Use existing tag, lookup done by name
[{"tagId":9458887,"isSpec":true}], Existing Spec Tag
[{"tagId":5003785,"isSpec":false}], Existing Tag'
operationId: uploadFile
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
requestBody:
content:
multipart/form-data:
schema:
type: string
format: binary
/3/workgroups/{workgroup_id}/projects/{project_id}/files:
post:
tags:
- File
summary: Upload File V3 to Project With Notification
description: Upload File V3 to Project With Notification
operationId: uploadFile
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
application/xml:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
text/xml:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
text/csv:
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
'*/*':
schema:
$ref: '#/components/schemas/FileV3ResponseVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
requestBody:
content:
multipart/form-data:
schema:
type: string
format: binary
/3/workgroups/{workgroup_id}/projects/{project_id}/folders:
get:
tags:
- File
summary: List all folders under a project
description: List all folders under a project
operationId: getFolders
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FolderListVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FolderListVO'
application/xml:
schema:
$ref: '#/components/schemas/FolderListVO'
text/xml:
schema:
$ref: '#/components/schemas/FolderListVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FolderListVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FolderListVO'
text/csv:
schema:
$ref: '#/components/schemas/FolderListVO'
'*/*':
schema:
$ref: '#/components/schemas/FolderListVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
post:
tags:
- File
summary: Create a new folder under a project
description: Create a new folder under a project
operationId: createFolder
parameters:
- name: workgroup_id
in: path
required: true
schema:
type: string
- name: project_id
in: path
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval
content:
application/json:
schema:
$ref: '#/components/schemas/FolderVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/FolderVO'
application/xml:
schema:
$ref: '#/components/schemas/FolderVO'
text/xml:
schema:
$ref: '#/components/schemas/FolderVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/FolderVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/FolderVO'
text/csv:
schema:
$ref: '#/components/schemas/FolderVO'
'*/*':
schema:
$ref: '#/components/schemas/FolderVO'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-json-smile:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/xml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
application/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/x-yaml:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
text/csv:
schema:
$ref: '#/components/schemas/HTTPStatusVO'
'*/*':
schema:
$ref: '#/components/schemas/HTTPStatusVO'
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/FolderPersisitVO'
components:
schemas:
FileResponseVO:
properties:
result:
description: ''
$ref: '#/components/schemas/FileVO'
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileResponseVO'
FileListResponseVO:
properties:
result:
type: array
description: ''
items:
$ref: '#/components/schemas/FileVO'
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileListResponseVO'
TagVO:
properties:
isSpec:
type: boolean
example: 'false'
description: ''
tagId:
type: integer
format: int64
example: '1'
description: ''
tagName:
type: string
example: sample tagName
description: ''
description: 'Java type: com.noosh.domain.collaboration.vo.TagVO'
FolderVO:
properties:
child_folders:
type: array
description: ''
items:
$ref: '#/components/schemas/FolderVO'
folder_id:
type: integer
format: int64
example: '1'
description: ''
folder_name:
type: string
example: sample folder_name
description: ''
parent_folder_Id:
type: integer
format: int64
example: '1'
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FolderVO'
FileVO:
properties:
comments:
type: string
example: sample comments
description: ''
description:
type: string
example: sample description
description: ''
download_link:
type: string
example: sample download_link
description: ''
file_id:
type: integer
format: int64
example: '1'
description: ''
file_name:
type: string
example: sample file_name
description: ''
file_size:
description: ''
$ref: '#/components/schemas/BigDecimal'
file_type:
type: string
example: sample file_type
description: ''
is_remote:
type: boolean
example: 'false'
description: ''
modified_date:
type: string
example: sample modified_date
description: ''
tagList:
type: array
description: ''
items:
$ref: '#/components/schemas/TagVO'
upload_date:
type: string
example: sample upload_date
description: ''
uploaded_by:
type: string
example: sample uploaded_by
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileVO'
FolderPersisitVO:
properties:
folder_name:
type: string
example: sample folder_name
description: ''
parent_folder_id:
type: integer
format: int64
example: '1'
description: ''
project_id:
type: integer
format: int64
example: '1'
description: ''
description: 'Java type: com.noosh.domain.nooshapi.persist.vo.FolderPersisitVO'
FileV3ResponseVO:
properties:
result:
description: ''
$ref: '#/components/schemas/FileV3VO'
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileV3ResponseVO'
HTTPStatusVO:
properties:
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.core.vo.HTTPStatusVO'
FileTagResponseVO:
properties:
result:
type: array
description: ''
items:
$ref: '#/components/schemas/TagRepoVO'
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileTagResponseVO'
FileV3VO:
properties:
comments:
type: string
example: sample comments
description: ''
description:
type: string
example: sample description
description: ''
download_link:
type: string
example: sample download_link
description: ''
file_id:
type: integer
format: int64
example: '1'
description: ''
file_name:
type: string
example: sample file_name
description: ''
file_size:
description: ''
$ref: '#/components/schemas/BigDecimal'
file_type:
type: string
example: sample file_type
description: ''
folder_id:
type: integer
format: int64
example: '1'
description: ''
is_remote:
type: boolean
example: 'false'
description: ''
modified_date:
type: string
example: sample modified_date
description: ''
upload_date:
type: string
example: sample upload_date
description: ''
uploaded_by:
type: string
example: sample uploaded_by
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FileV3VO'
BigDecimal:
description: 'Java type: java.math.BigDecimal'
TagRepoVO:
properties:
isSpec:
type: boolean
example: 'false'
description: ''
tagId:
type: integer
format: int64
example: '1'
description: ''
tagName:
type: string
example: sample tagName
description: ''
description: 'Java type: com.noosh.domain.collaboration.vo.TagRepoVO'
FolderListVO:
properties:
result:
type: array
description: ''
items:
$ref: '#/components/schemas/FolderBaseVO'
status_code:
type: integer
format: int32
example: '1'
description: ''
status_reason:
type: string
example: sample status_reason
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FolderListVO'
FolderBaseVO:
properties:
child_folders:
type: array
description: ''
items:
$ref: '#/components/schemas/FolderVO'
folder_id:
type: integer
format: int64
example: '1'
description: ''
folder_name:
type: string
example: sample folder_name
description: ''
description: 'Java type: com.noosh.nooshapi.vo.file.FolderBaseVO'
securitySchemes:
HTTP_BASIC:
type: http
scheme: basic