Skip to main content

SaveCrowdyStudioProjectInput

Atomically save selected project metadata plus a batch of file upserts/deletes under one expected project revision. Crowdy Studio uses this to persist one coherent full-stack edit.

input SaveCrowdyStudioProjectInput {
appId: BigInt!
projectId: String!
expectedRevision: BigInt!
gridId: BigInt
name: String
description: String
serverModuleName: String
clientModuleName: String
pairingPreference: CrowdyStudioPairingPreference
sdkVersion: String
abiVersion: Int
upserts: [CrowdyStudioProjectFileInput!]
deletes: [CrowdyStudioProjectFileDeleteInput!]
idempotencyKey: String
}

Fields

SaveCrowdyStudioProjectInput.appId ● BigInt! non-null scalar

App tenant that owns the private project.

SaveCrowdyStudioProjectInput.projectId ● String! non-null scalar

Project UUID to update.

SaveCrowdyStudioProjectInput.expectedRevision ● BigInt! non-null scalar

Current project revision. A stale value is refused with extensions.code CROWDY_STUDIO_REVISION_CONFLICT (HTTP 409) — that exact code, not CONFLICT — and applies no metadata or file writes.

SaveCrowdyStudioProjectInput.gridId ● BigInt scalar

New optional grid affinity, explicit null to clear, or omit to preserve. Affinity never grants deploy authority.

SaveCrowdyStudioProjectInput.name ● String scalar

New non-empty project name, or omit to preserve.

SaveCrowdyStudioProjectInput.description ● String scalar

New private description, explicit null to clear, or omit to preserve.

SaveCrowdyStudioProjectInput.serverModuleName ● String scalar

New SERVER module name, explicit null to clear, or omit to preserve.

SaveCrowdyStudioProjectInput.clientModuleName ● String scalar

New CLIENT module name, explicit null to clear, or omit to preserve.

SaveCrowdyStudioProjectInput.pairingPreference ● CrowdyStudioPairingPreference enum

New editor pairing preference, or omit to preserve.

SaveCrowdyStudioProjectInput.sdkVersion ● String scalar

New supported SDK pin, or omit to preserve.

SaveCrowdyStudioProjectInput.abiVersion ● Int scalar

New supported ABI pin, or omit to preserve.

SaveCrowdyStudioProjectInput.upserts ● [CrowdyStudioProjectFileInput!] list input

Changed or new files to insert/replace. Unmentioned files and their provenance remain unchanged.

SaveCrowdyStudioProjectInput.deletes ● [CrowdyStudioProjectFileDeleteInput!] list input

Files to delete in the same transaction. A target/path cannot also appear in upserts.

SaveCrowdyStudioProjectInput.idempotencyKey ● String scalar

Optional 24-hour retry key; recommended because a successful atomic save increments the expected revision.

Member Of

crowdyStudioProjectSave mutation