Project
One project, null when it does not exist or the caller may not view it.
One project, null when it does not exist or the caller may not view it.
Arguments
id*ID!Project id.
- returns
A project: the top-level container of folders (sections), files and discussion.
id*ID!Unique id.
title*String!Project title.
description?StringOptional description.
coverImage?StringCover image URL, null when none.
status*ProjectStatus!Lifecycle state.
Values
ACTIVEIn use and shown in the project list.
ARCHIVEDFinished and kept for reference.
DRAFTBeing prepared and not yet in active use.
files*Live files directly in the project.
folders*Live folders of the project.
chats*Discussion messages of the project. Empty while discussion is off.
totalFiles*Int!Number of live files.
totalSize*BigInt!Total size of the live files in bytes.
contentSummary*Counts of the project content by kind.
repFiles*Representative files for the project card: a sample seeded by the project id and the calendar date, computed on the server in the Asia/Jakarta time zone (fixed in the resolver, not SHOTSTASH_DEFAULT_TIMEZONE), so every request on the same day sees the same files whatever the client time zone.
Arguments
limitInt!*How many files to return, 1 to 5 (INVALID_LIMIT otherwise); fewer when the project has fewer files.
createdAt*DateTime!When the project was created.
updatedAt*DateTime!When the project was last changed.
query Project($id: ID!) { project(id: $id) { id title description coverImage status files { id filename originalName mimeType size md5Checksum thumbnailUrl duplicateOf processedVersions { id kind kindLabel mimeType size downloadUrl createdAt } jobs { id kind kindLabel fileId status state progress attempts } } folders { id name project { id title description coverImage status totalFiles totalSize createdAt } parent { id name totalFiles folderType trashedAt createdAt updatedAt } totalFiles folderType trashedAt createdAt updatedAt } totalFiles totalSize createdAt }}