Namespaces
project
Methods and types of the `project` namespace (`client.project` / `bot.project`).
Interfaces
AddItemsToPublicFileSystemData
Properties
AddItemsToSubmissionData
Properties
CopyItemsData
Properties
CopyPublicItemsData
Properties
CopySubmissionItemsData
Properties
CreateFolderData
Properties
CreateProjectData
Properties
CreatePublicFileSystemData
Properties
CreateSubmissionData
Properties
CreateSubmissionFolderData
Properties
DateRangeParams
Extended by
Properties
DeleteItemsData
Properties
DeletePublicItemsData
Properties
DeleteSubmissionItemsData
Properties
FileUploadData
Extended by
Properties
GetChatParams
Properties
GetHighlightedMessagesParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
cursor? | string | PaginationParams.cursor |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | PaginationParams.startAt |
GetItemsAtPathParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
createdAfter? | string | number | DateRangeParams.createdAfter |
createdBefore? | string | number | DateRangeParams.createdBefore |
creatorId? | string | - |
cursor? | string | - |
includeCounts? | boolean | - |
includeCursorRecord? | boolean | - |
includeStartAtRecord? | boolean | - |
limit? | number | - |
mediaTypes? | ("folder" | "image" | "video")[] | - |
nameSearch? | string | - |
page? | number | - |
paginate? | "cursor" | "index" | - |
paginateReverse? | boolean | - |
resourceIds? | string[] | - |
resourceStatus? | "active" | "pendingDelete" | - |
resourceTags? | string[] | - |
resourceType? | "asset" | "folder" | - |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | - |
GetPublicChatMessagesParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
cursor? | string | PaginationParams.cursor |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
replyLimit? | number | - |
startAt? | string | PaginationParams.startAt |
GetSubmissionParams
Properties
ListAssetsParams
Extends
Extended by
Properties
| Property | Type | Inherited from |
|---|---|---|
createdAfter? | string | number | DateRangeParams.createdAfter |
createdBefore? | string | number | DateRangeParams.createdBefore |
cursor? | string | PaginationParams.cursor |
folderId? | string | - |
ignoreFolder? | boolean | - |
includeChats? | boolean | - |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
mediaTypes? | string[] | - |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | PaginationParams.startAt |
ListFeedParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
chatMessageLimit? | number | - |
chatMessageSort? | Record<string, -1 | 1> | - |
chatReplyLimit? | number | - |
chatReplySort? | Record<string, -1 | 1> | - |
createdAfter? | string | number | ListAssetsParams.createdAfter |
createdBefore? | string | number | ListAssetsParams.createdBefore |
cursor? | string | ListAssetsParams.cursor |
folderId? | string | ListAssetsParams.folderId |
followedChatsOnly? | boolean | - |
hideIfNoChatMessages? | boolean | - |
ignoreFolder? | boolean | ListAssetsParams.ignoreFolder |
includeChats? | boolean | ListAssetsParams.includeChats |
includeCounts? | boolean | ListAssetsParams.includeCounts |
includeCursorRecord? | boolean | ListAssetsParams.includeCursorRecord |
limit? | number | ListAssetsParams.limit |
mediaTypes? | string[] | ListAssetsParams.mediaTypes |
page? | number | ListAssetsParams.page |
paginate? | "cursor" | "index" | ListAssetsParams.paginate |
paginateReverse? | boolean | ListAssetsParams.paginateReverse |
sort? | Record<string, -1 | 1> | ListAssetsParams.sort |
startAt? | string | ListAssetsParams.startAt |
ListFoldersParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
createdAfter? | string | number | DateRangeParams.createdAfter |
createdBefore? | string | number | DateRangeParams.createdBefore |
cursor? | string | PaginationParams.cursor |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
mediaTypes? | string[] | - |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | PaginationParams.startAt |
ListPublicFileSystemsParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
creatorId? | string | - |
cursor? | string | PaginationParams.cursor |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
search? | string | - |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | PaginationParams.startAt |
status? | | PublicFileSystemStatus | PublicFileSystemStatus[] | - |
ListSubmissionsParams
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
createdAfter? | string | number | DateRangeParams.createdAfter |
createdBefore? | string | number | DateRangeParams.createdBefore |
cursor? | string | PaginationParams.cursor |
includeCounts? | boolean | PaginationParams.includeCounts |
includeCursorRecord? | boolean | PaginationParams.includeCursorRecord |
limit? | number | PaginationParams.limit |
page? | number | PaginationParams.page |
paginate? | "cursor" | "index" | PaginationParams.paginate |
paginateReverse? | boolean | PaginationParams.paginateReverse |
search? | string | - |
sort? | Record<string, -1 | 1> | SortParams.sort |
startAt? | string | PaginationParams.startAt |
LogoUploadData
Extends
Properties
| Property | Type | Inherited from |
|---|---|---|
basePath? | string | FileUploadData.basePath |
checksum | string | FileUploadData.checksum |
id | number | FileUploadData.id |
name | string | FileUploadData.name |
sizeInMB | number | FileUploadData.sizeInMB |
MoveItemsData
Properties
MoveItemsResult
A move into a virtual folder is not a move. Public/ and Submission/
copy the items into that collection; Review/ publishes them. Both leave
the sources in place, and both report through the extra fields below.
Properties
MovePublicItemsData
Properties
MoveSubmissionItemsData
Properties
PaginationParams
Extended by
ListAssetsParamsListFoldersParamsListSubmissionsParamsListPublicFileSystemsParamsGetHighlightedMessagesParamsGetPublicChatMessagesParams
Properties
| Property | Type |
|---|---|
cursor? | string |
includeCounts? | boolean |
includeCursorRecord? | boolean |
limit? | number |
page? | number |
paginate? | "cursor" | "index" |
paginateReverse? | boolean |
startAt? | string |
ProjectFileUploadBody
Properties
| Property | Type |
|---|---|
destinationPath? | string |
files | FileUploadData[] |
ProjectTopAccessActivityResponse
Defines project-related methods for the NuramaClient.
Properties
| Property | Type |
|---|---|
eventType | string |
from | string |
range | string |
results | { assetId: string; count: number; }[] |
to | string |
PublicAuditAssetResponse
Properties
PublicFileSystemResponse
Properties
| Property | Type |
|---|---|
allowAnonymousComments? | boolean |
createdAt | string |
description? | string |
expiresAt | string |
hideCreators? | boolean |
id | string |
itemPaths | string[] |
projectId | string |
title | string |
token | string |
updatedAt | string |
PublishItemsData
Properties
SortParams
Extended by
GetItemsAtPathParamsListAssetsParamsListFoldersParamsListSubmissionsParamsListPublicFileSystemsParamsGetHighlightedMessagesParams
Properties
TagSubmissionData
Properties
UnpublishItemsData
Properties
UpdateProjectData
Properties
UpdatePublicFileSystemData
Properties
UpdateSubmissionData
Properties
Type Aliases
AssetResponse
type AssetResponse = Asset;ChatResponse
type ChatResponse = Chat;FolderResponse
type FolderResponse = Folder;PaginatedResponse
type PaginatedResponse<T> = PaginatedResult | CursorPaginatedResult & {
results?: T[];
};Type Declaration
| Name | Type |
|---|---|
results? | T[] |
Type Parameters
| Type Parameter |
|---|
T |
ProjectResponse
type ProjectResponse = Project;PublicFileSystemStatus
type PublicFileSystemStatus = "active" | "expired" | "disabled" | "unreleased";SubmissionResponse
type SubmissionResponse = ChatSubmission;Functions
default()
function default(client): {
addItemsToPublicFileSystem: Promise<PublicFileSystemResponse>;
addItemsToSubmission: Promise<ChatSubmission>;
copyItemsToPath: Promise<{
count: number;
}>;
copyPublicItemsAtPath: Promise<{
count: number;
}>;
copySubmissionItems: Promise<{
count: number;
}>;
createAssets: Promise<any[]>;
createFolder: Promise<Folder>;
createLogo: Promise<any>;
createProject: Promise<Project>;
createProjectPublicAssetChatMessage: Promise<CreatePublicAssetChatMessageResponse>;
createProjectPublicChatMessage: Promise<ChatMessage>;
createProjectPublicTopicChatMessage: Promise<CreatePublicAssetChatMessageResponse>;
createPublicFileSystem: Promise<PublicFileSystemResponse>;
createPublicFolder: Promise<Folder>;
createSubmission: Promise<ChatSubmission>;
createSubmissionFolder: Promise<Folder>;
deleteItemsAtPath: Promise<{
count: number;
}>;
deleteProject: Promise<void>;
deletePublicFileSystem: Promise<PublicFileSystemResponse>;
deletePublicItemsAtPath: Promise<{
count: number;
}>;
deleteSubmissionItems: Promise<{
count: number;
}>;
getAssets: Promise<PaginatedResponse<Asset>>;
getFolders: Promise<PaginatedResponse<Folder>>;
getHighlightedMessages: Promise<PaginatedResponse<ChatMessage>>;
getHomeFeed: Promise<PaginatedResponse<Asset>>;
getItemsAtPath: Promise<PaginatedResponse<any>>;
getProject: Promise<Project>;
getProjectChat: Promise<Chat>;
getProjectPublicAsset: Promise<PublicAssetResponse>;
getProjectPublicChat: Promise<any>;
getProjectPublicChatMessages: Promise<PublicChatMessagesResponse>;
getProjects: Promise<Project[]>;
getPublicAudit: Promise<PaginatedResponse<PublicAuditAssetResponse>>;
getPublicFileSystem: Promise<PublicFileSystemResponse>;
getPublicFileSystems: Promise<PaginatedResponse<PublicFileSystemResponse>>;
getPublicItemsAtPath: Promise<PaginatedResponse<any>>;
getSubmission: Promise<ChatSubmission>;
getSubmissionItems: Promise<PaginatedResponse<any>>;
getSubmissions: Promise<PaginatedResponse<ChatSubmission>>;
getTopAccessActivity: Promise<ProjectTopAccessActivityResponse>;
moveItemsToPath: Promise<MoveItemsResult>;
movePublicItemsAtPath: Promise<{
count: number;
}>;
moveSubmissionItems: Promise<{
count: number;
}>;
previewDeleteItemsAtPath: Promise<DeleteImpact>;
publishItems: Promise<any>;
releasePublicFileSystem: Promise<PublicFileSystemResponse>;
releaseSubmission: Promise<ChatSubmission>;
releaseSubmissionUpdate: Promise<ChatSubmission>;
searchProject: Promise<SearchResponse>;
tagSubmission: Promise<ChatSubmission>;
unpublishItems: Promise<any>;
untagSubmission: Promise<ChatSubmission>;
updateLogo: Promise<any>;
updateProject: Promise<Project>;
updatePublicFileSystem: Promise<PublicFileSystemResponse>;
updateSetting: Promise<Project>;
updateSubmission: Promise<ChatSubmission>;
};Parameters
| Parameter | Type |
|---|---|
client | default |
Returns
| Name | Type | Description |
|---|---|---|
addItemsToPublicFileSystem() | ( projectId, publicId, addItemsData ) => Promise<PublicFileSystemResponse> | Adds additional items to an existing public file system. |
addItemsToSubmission() | ( projectId, submissionId, addItemsData ) => Promise<ChatSubmission> | Adds items to an existing submission. |
copyItemsToPath() | ( projectId, visibility, copyData ) => Promise<{ count: number; }> | Copies items to a specific path within a project. |
copyPublicItemsAtPath() | ( projectId, token, copyData ) => Promise<{ count: number; }> | Copies items within a public file system (authenticated management). |
copySubmissionItems() | ( projectId, submissionId, copyData ) => Promise<{ count: number; }> | Copies items within a submission. |
createAssets() | (projectId, fileUploadBody) => Promise<any[]> | Create assets within a project and return their signed links for upload. |
createFolder() | ( projectId, visibility, folderData ) => Promise<Folder> | Creates a folder within a project with file system integration. |
createLogo() | (projectId, logoData) => Promise<any> | Creates a new logo asset for a project. |
createProject() | (projectData) => Promise<Project> | Creates a new project. |
createProjectPublicAssetChatMessage() | ( projectId, token, assetId, data ) => Promise<CreatePublicAssetChatMessageResponse> | Creates a message on an asset's public chat from an authenticated project context. Creates the chat lazily if it doesn't exist yet. Unlike the public endpoint, this does NOT check token expiration. |
createProjectPublicChatMessage() | ( projectId, token, chatId, data ) => Promise<ChatMessage> | Creates a message in an existing public chat from an authenticated project context. Unlike the public endpoint, this does NOT check token expiration. |
createProjectPublicTopicChatMessage() | ( projectId, token, data ) => Promise<CreatePublicAssetChatMessageResponse> | Creates a message on the main public topic chat from an authenticated project context. Creates the chat lazily if it doesn't exist yet. Unlike the public endpoint, this does NOT check token expiration. |
createPublicFileSystem() | (projectId, publicFileSystemData) => Promise<PublicFileSystemResponse> | Creates a public file system with a secure token for sharing project assets publicly. |
createPublicFolder() | ( projectId, token, folderData ) => Promise<Folder> | Creates a folder inside a public file system (authenticated management). |
createSubmission() | (projectId, submissionData) => Promise<ChatSubmission> | Creates a new submission for a project. |
createSubmissionFolder() | ( projectId, submissionId, folderData ) => Promise<Folder> | Creates a folder within a submission. |
deleteItemsAtPath() | ( projectId, visibility, deleteData ) => Promise<{ count: number; }> | Deletes items at a specific path within a project. |
deleteProject() | (projectId) => Promise<void> | Deletes a project (marks for deletion). |
deletePublicFileSystem() | (projectId, publicId) => Promise<PublicFileSystemResponse> | Deletes a public file system and invalidates its access token. |
deletePublicItemsAtPath() | ( projectId, token, deleteData ) => Promise<{ count: number; }> | Deletes items from a public file system (authenticated management). |
deleteSubmissionItems() | ( projectId, submissionId, deleteData ) => Promise<{ count: number; }> | Deletes items within a submission. |
getAssets() | ( projectId, visibility, params? ) => Promise<PaginatedResponse<Asset>> | Lists a project's assets for one visibility tier. creator requires canGetCreatorAssets; reviewer requires canGetReviewerAssets. Throws 'projectId is required.' or 'visibility is required.'. |
getFolders() | ( projectId, visibility, params? ) => Promise<PaginatedResponse<Folder>> | Gets folders within a project with specified visibility. |
getHighlightedMessages() | ( projectId, visibility, params? ) => Promise<PaginatedResponse<ChatMessage>> | Lists highlighted chat messages across a project for one visibility tier (cursor pagination only). creator requires canGetCreatorHighlights; reviewer requires canGetReviewerHighlights. Throws 'projectId is required.' or 'visibility is required.'. |
getHomeFeed() | ( projectId, visibility, params? ) => Promise<PaginatedResponse<Asset>> | Gets the home feed for a project with a specified visibility. |
getItemsAtPath() | ( projectId, visibility, path?, params?, usePost? ) => Promise<PaginatedResponse<any>> | Gets items at a specific path within a project. |
getProject() | (projectId) => Promise<Project> | Retrieves a specific project by its ID. |
getProjectChat() | ( projectId, visibility, params? ) => Promise<Chat> | Gets the project chat with the specified visibility. |
getProjectPublicAsset() | ( projectId, token, assetId ) => Promise<PublicAssetResponse> | Gets a public asset with its public chat from an authenticated project context. Unlike the public endpoint, this does NOT check token expiration. Use this for internal management of public file systems. |
getProjectPublicChat() | (projectId, token) => Promise<any> | Gets a public chat from an authenticated project context. Unlike the public endpoint, this does NOT check token expiration. Use this for internal management of public file systems. |
getProjectPublicChatMessages() | ( projectId, token, chatId, params? ) => Promise<PublicChatMessagesResponse> | Gets messages from a public chat from an authenticated project context. Unlike the public endpoint, this does NOT check token expiration. Use this for internal management of public file systems. |
getProjects() | () => Promise<Project[]> | Retrieves projects accessible by the user. NOTE: API endpoint /v1/projects does not currently support pagination. |
getPublicAudit() | (projectId, params?) => Promise<PaginatedResponse<PublicAuditAssetResponse>> | Get the public audit for a project — assets that are or have been publicly exposed. Requires projectAdmin or projectOwner on the project (or workspace-tier admin via inheritance). |
getPublicFileSystem() | (projectId, publicId) => Promise<PublicFileSystemResponse> | Retrieves a specific public file system by its ID. |
getPublicFileSystems() | (projectId, params?) => Promise<PaginatedResponse<PublicFileSystemResponse>> | Gets all public file systems for a project. |
getPublicItemsAtPath() | ( projectId, token, path?, params? ) => Promise<PaginatedResponse<any>> | Gets items from a public file system at a specific path (authenticated management). |
getSubmission() | ( projectId, submissionId, params? ) => Promise<ChatSubmission> | Retrieves a specific submission by its ID. |
getSubmissionItems() | ( projectId, submissionId, path?, params? ) => Promise<PaginatedResponse<any>> | Gets files for a specific submission. |
getSubmissions() | (projectId, params?) => Promise<PaginatedResponse<ChatSubmission>> | Retrieves submissions for a project. |
getTopAccessActivity() | (projectId, params?) => Promise<ProjectTopAccessActivityResponse> | Top-N assets in a project by access-activity event type (plays, downloads, embeds). Requires project read access. Returns asset IDs and counts only; hydrate names and thumbnails through the normal asset fetch path. Throws 'projectId is required.' when projectId is falsy. |
moveItemsToPath() | ( projectId, visibility, moveData ) => Promise<MoveItemsResult> | Moves items to a specific path within a project. |
movePublicItemsAtPath() | ( projectId, token, moveData ) => Promise<{ count: number; }> | Moves items within a public file system (authenticated management). |
moveSubmissionItems() | ( projectId, submissionId, moveData ) => Promise<{ count: number; }> | Moves items within a submission. |
previewDeleteItemsAtPath() | ( projectId, visibility, deleteData ) => Promise<DeleteImpact> | Asks what deleting these paths would reach, without deleting anything. Computed from the same cascade the delete runs, so the answer is what will happen rather than an estimate of it. Only SECONDARY references come back — the reviewer, submission and public-release copies that would go with the selection. |
publishItems() | (projectId, publishData) => Promise<any> | Publishes a list of items (assets, folders) within a project. |
releasePublicFileSystem() | (projectId, publicId) => Promise<PublicFileSystemResponse> | Releases a staged (unreleased) public file system, making it externally accessible via its public token. |
releaseSubmission() | (projectId, submissionId) => Promise<ChatSubmission> | Releases a staged (unreleased) submission, making it visible to reviewers and firing the deferred "new submission" side effects (emails, notifications, system messages). |
releaseSubmissionUpdate() | (projectId, submissionId) => Promise<ChatSubmission> | Re-releases an already-released submission's side effects (the "Release Update" action) — re-notifies reviewers with the submission-update email template + submissionUpdate notification. Does not change status. |
searchProject() | (projectId, params) => Promise<SearchResponse> | Full-text search across assets, chat messages, and tasks within a project. Results are populated per the content type's native list view (asset → creator/publisher/tags; chatMessage → author/mentions/attachments; task → creator/assignee/project/origin). |
tagSubmission() | ( projectId, submissionId, tagData ) => Promise<ChatSubmission> | Adds a tag to a submission. |
unpublishItems() | (projectId, unpublishData) => Promise<any> | Unpublishes a list of items (assets, folders) within a project. |
untagSubmission() | ( projectId, submissionId, tagData ) => Promise<ChatSubmission> | Removes a tag from a submission. |
updateLogo() | (projectId, logoData) => Promise<any> | Updates the logo asset for a project. |
updateProject() | (projectId, updateData) => Promise<Project> | Updates a project. |
updatePublicFileSystem() | ( projectId, publicId, updateData ) => Promise<PublicFileSystemResponse> | Updates an existing public file system's title and description. |
updateSetting() | ( projectId, name, value ) => Promise<Project> | Updates a single project setting (e.g. aiPolishEnabled, aiCustomPreprompt). Pass null to inherit the workspace's value; pass a typed value to override. The valid setting names are validated server-side against projectService.validProjectSettings. |
updateSubmission() | ( projectId, submissionId, updateData ) => Promise<ChatSubmission> | Updates a submission. |