StudioProjectLeaseDto
| Field | Required | Description |
|---|---|---|
autosaveDebounceMs | Yes | Pause in editing after which the client saves |
expiresAt | Yes | When the current lease lapses |
heldByAnother | Yes | A live lease belongs to another editor instance |
heldByYou | Yes | This client holds the write lease |
leaseMs | Yes | Lease length the server grants |
renewMs | Yes | How often the holder should renew |
Complete definition
required lists fields that must be present. nullable allows a null value; it does not make the field optional. Response enums retain exact wire values for compatibility.
{
"properties": {
"autosaveDebounceMs": {
"description": "Pause in editing after which the client saves",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
"expiresAt": {
"description": "When the current lease lapses",
"format": "date-time",
"nullable": true,
"type": "string"
},
"heldByAnother": {
"description": "A live lease belongs to another editor instance",
"type": "boolean"
},
"heldByYou": {
"description": "This client holds the write lease",
"type": "boolean"
},
"leaseMs": {
"description": "Lease length the server grants",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
"renewMs": {
"description": "How often the holder should renew",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
}
},
"required": [
"autosaveDebounceMs",
"expiresAt",
"heldByAnother",
"heldByYou",
"leaseMs",
"renewMs"
],
"type": "object"
}© 2026 Frameleaf Inc. All rights reserved.
Frameleaf and the Frameleaf logo are Trademarks of Frameleaf Inc.