Printago API
PATCH
/v1/layouts/{id}
Update dashboard layout
Only the layout's owner can update it. Setting `isDefault` clears the flag from the owner's other layouts; a new definition is re-validated.
Path Parameters
id
required
string
Layout ID
Request Body
Fields to update
LayoutUpdate
definitionoptional
object
cardsrequired
object[]
max items: 200
cardrequired
string
entityIdoptional
string
hrequired
integer
idrequired
string
wrequired
integer
xrequired
integer
yrequired
integer
formatVersionoptional
integer
moderequired
string
isDefaultoptional
boolean
nameoptional
string
Example Request
application/json
{
"name": "string",
"definition": {
"formatVersion": 1,
"mode": "string",
"cards": [
{
"id": "string",
"card": "string",
"entityId": "string",
"x": 1,
"y": 1,
"w": 1,
"h": 1
}
]
},
"isDefault": true
}
Response Schema
Layout
createdAtrequired
string
format: date-time
definitionrequired
object
A layout is a declarative arrangement of card instances, not code.
cardsrequired
object[]
cardrequired
string
entityIdoptional
string
hrequired
number
idrequired
string
wrequired
number
xrequired
number
yrequired
number
formatVersionrequired
number
moderequired
any
formatVersionrequired
number
idrequired
string
pattern: ^[a-z0-9]{24}$
isDefaultrequired
boolean
moderequired
any
namerequired
string
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
updatedAtrequired
string
format: date-time
userIdrequired
string
Example Response
200 OK — application/json
{
"name": "string",
"userId": "string",
"formatVersion": 1,
"isDefault": true,
"definition": {
"formatVersion": 1,
"cards": [
{
"id": "string",
"card": "string",
"entityId": "string",
"x": 1,
"y": 1,
"w": 1,
"h": 1
}
]
},
"id": "string",
"storeId": "string",
"createdAt": "2026-09-02T09:16:20.321Z",
"updatedAt": "2026-09-02T09:16:20.321Z"
}