Category: Food and drink. Tags: Restaurants and cafes, Prices and rates, Schools and campuses, Bars and pubs.
Previews



Views and forms
Views: canvas, corner, chip. Canvas forms: landscape, portrait.
Card views, themes and publishing. Browse the gallery.
Data and privacy
This card uses its configured properties and live card data.
Properties
For theme, background, accent and position, see Common properties.
Set static properties in params. Bind data to a project card data key for live values; that document holds only dynamic properties. Without a data key, put the complete configuration in params. Nested rows describe the contents of their parent property.
Static properties
| Name | Type | Default | Values and limits | Description |
|---|---|---|---|---|
title | string | "" | maxLength: 60 | |
currency | string | "$" | maxLength: 4 | |
decimals | number, string | "auto" | "auto", 0, 1, 2 | auto shows whole prices without decimals when every price is whole, otherwise two. |
columns | number, string | "auto" | "auto", 1, 2, 3 | |
specialLabel | string | "Today's special" | maxLength: 30 | The chip view's lead-in. |
pageSeconds | integer | 12 | minimum: 5; maximum: 120 | When the menu needs more than one page, pages turn on the wall clock. |
Dynamic properties
| Name | Type | Default | Values and limits | Description |
|---|---|---|---|---|
sections | array | minItems: 1; maxItems: 8; Required | ||
sections[].name | string | maxLength: 40; Required | ||
sections[].note | string | "" | maxLength: 80 | |
sections[].items | array | minItems: 1; maxItems: 24; Required | ||
sections[].items[].name | string | maxLength: 60; Required | ||
sections[].items[].description | string | "" | maxLength: 120 | |
sections[].items[].price | number, null | null | minimum: 0 | |
sections[].items[].priceLabel | string | "" | maxLength: 12 | Shown instead of the price, for example MP. |
sections[].items[].tags | array | [] | maxItems: 6 | |
sections[].items[].soldOut | boolean | false | ||
footnote | string | "" | maxLength: 140 |
Canvas example
Add this item to a playlist page’s primitives. Publish the playlist and assign a screen.
{
"id": "menu",
"primitive": "card",
"card": "menu",
"major": 1,
"params": {
"theme": "neomustard"
},
"rect": {
"x": 0,
"y": 0,
"width": 1920,
"height": 1080
},
"layer": 0,
"content_fit": "fill",
"data": "menu-main"
}
Write live data
Create this document before showing the card, then replace it to update the screen without republishing. Use the same project as the playlist. Supply your API authorization through the environment; see API authentication.
curl --request PUT "https://api.screenrig.ai/api/card-data/menu-main" \
--header "Authorization: Bearer $SCREENRIG_TOKEN" \
--header "ScreenRig-Project: $SCREENRIG_PROJECT" \
--header "Content-Type: application/json" \
--data '{"document":{"sections":[{"name":"Example","items":[{"name":"Example"}]}],"footnote":""}}'