Printago API
PATCH /v1/cards/{id}

Update dashboard card

Requires: card.edit

Path Parameters

id required
string
Card ID

Request Body

Fields to update; a new definition is re-validated

CardUpdate
definitionoptional
object
accentoptional
string
childrenrequired
object[]
max items: 32
bindoptional
string
crequired
string
commandoptional
string
densityoptional
"s" | "m" | "l"
sml
slotoptional
"header" | "body" | "footer"
headerbodyfooter
variantoptional
string
entityrequired
string
formatVersionoptional
integer
layoutoptional
string
sizeoptional
string
descriptionoptionalnullable
string
nameoptional
string

Example Request

application/json
{
  "name": "string",
  "description": "string",
  "definition": {
    "formatVersion": 1,
    "entity": "string",
    "size": "string",
    "layout": "string",
    "accent": "string",
    "children": [
      {
        "c": "string",
        "bind": "string",
        "command": "string",
        "variant": "string",
        "density": "s",
        "slot": "header"
      }
    ]
  }
}

Response Schema

Card
createdAtrequired
string
format: date-time
definitionrequired
object
A card is a declarative schema, not code — a template bound to an entity type.
accentoptional
"fill" | "border"
Omitted = `border`.
fillborder
childrenrequired
object[]
bindoptional
string
crequired
string
commandoptional
string
densityoptional
"s" | "m" | "l"
sml
slotoptional
"header" | "body" | "footer"
headerbodyfooter
variantoptional
string
entityrequired
"printer" | "printJob"
printerprintJob
formatVersionrequired
number
layoutoptional
"stack" | "media-inset" | "media"
Omitted = `stack`, so every card authored before layouts still renders as it did.
stackmedia-insetmedia
sizerequired
"1x1" | "2x1" | "2x2" | "4x2" | "4x4"
1x12x12x24x24x4
descriptionrequirednullable
string
entityrequired
"printer" | "printJob"
printerprintJob
formatVersionrequired
number
idrequired
string
pattern: ^[a-z0-9]{24}$
namerequired
string
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
updatedAtrequired
string
format: date-time

Example Response

200 OK — application/json
{
  "name": "string",
  "description": "string",
  "entity": "printer",
  "formatVersion": 1,
  "definition": {
    "formatVersion": 1,
    "entity": "printer",
    "size": "1x1",
    "layout": "stack",
    "accent": "fill",
    "children": [
      {
        "c": "string",
        "bind": "string",
        "command": "string",
        "variant": "string",
        "density": "s",
        "slot": "header"
      }
    ]
  },
  "id": "string",
  "storeId": "string",
  "createdAt": "2025-01-15T12:00:00.000Z",
  "updatedAt": "2025-01-15T12:00:00.000Z"
}