Recipe: a musician
A complete request body for a musician: the newest release first, one row of streaming marks, dates, merch, press.
Whoever opens this page just heard something and wants more of it. The release goes first; everything else is below it.
{
"username": "nadia-sound",
"locale": "en",
"page": {
"displayName": "Nadia",
"bio": "Electronic pop from Tbilisi. New single “Glass Sea” out now.",
"templateId": "aurora",
"blocks": [
{
"type": "link",
"label": "Glass Sea — listen",
"url": "https://ffm.to/glasssea",
"featured": true,
"badge": "New"
},
{
"type": "socialRow",
"items": [
{
"platform": "spotify",
"url": "https://open.spotify.com/artist/…"
},
{
"platform": "applemusic",
"url": "https://music.apple.com/artist/…"
},
{
"platform": "youtube",
"url": "https://youtube.com/@nadiasound"
},
{
"platform": "soundcloud",
"url": "https://soundcloud.com/nadiasound"
}
]
},
{
"type": "text",
"variant": "heading",
"content": "Dates"
},
{
"type": "link",
"label": "14 Oct · Tbilisi, Bassiani",
"url": "https://tickets.example/1",
"note": "Tickets"
},
{
"type": "link",
"label": "2 Nov · Berlin, Berghain Kantine",
"url": "https://tickets.example/2",
"note": "Tickets",
"showUntil": "2026-11-03T00:00:00Z"
},
{
"type": "link",
"label": "Previous: “Undertow” EP",
"url": "https://ffm.to/undertow"
},
{
"type": "link",
"label": "Merch",
"url": "https://shop.example",
"path": "merch"
},
{
"type": "socialRow",
"items": [
{
"platform": "instagram",
"url": "https://instagram.com/nadiasound"
},
{
"platform": "tiktok",
"url": "https://tiktok.com/@nadiasound"
}
]
},
{
"type": "link",
"label": "Press photos and bio",
"url": "https://drive.example/press",
"note": "For writers, promoters, radio"
}
]
},
"avatarUrl": "https://example.com/nadia.jpg"
}Why it is shaped this way
- The newest release is a
featuredlink with a badge, not an embed: inside in-app browsers a player is thirty seconds of preview at best. - Streaming services are one
socialRow, not five rows — the visitor looks for a logo, not a list. - Dates carry the ticket link on the row and a
showUntilso they disappear on their own. - Merch gets a short path (
/merch) to print on the table at shows. - Press material at the bottom: writers and promoters look for it, and it saves them using whatever a search engine finds.
Replace every URL and every word with the person's own. Then POST https://tapmy.link/api/agent/pages, read page.md, hand over.