create_app_screenshot
posts:write
Turn an app or website screenshot into an on-brand social image: the screenshot sits in a Mac-style browser window (traffic lights and address bar) on the workspace's brand background, with an optional eyebrow, title and body. Takes a few seconds and returns public image URLs to show the user. screenshot: { url } for a public https PNG, JPEG or WebP, or { assetId } for an image uploaded with create_media_upload or import_media_from_url.
Layouts: centered (whole screenshot under a headline), tilted (headline beside a tilted window floating off the edge; give it a title), closeup (a zoomed crop under a short caption; crop.focusX and crop.focusY from 0 to 1 pick the spot, crop.zoom how close). Formats: landscape (X, default), square and portrait (LinkedIn, Instagram, Facebook), link, story; alsoFormats renders the same design in more sizes at once. Themes: brand, light, dark. addressBar defaults to the brand kit's website.
Offer the user a couple of layouts to choose from. Nothing is attached to a post yet: to post the image, pass the returned postMedia as media to create_draft_post or update_post.
Input
screenshotobjectrequiredFields
assetIdstring (uuid)urlstring (uri)max length 2000
layoutstringone of
centered,tilted,closeup· default"centered"formatstringone of
landscape,square,portrait,link,story· default"landscape"themestringone of
brand,light,dark· default"brand"includeLogobooleandefault
truehandlestringmin length 1 · max length 40
contentobjectdefault
{}Fields
eyebrowstringmin length 1 · max length 60
titlestringmin length 1 · max length 120
bodystringmin length 1 · max length 200
addressBarstringmin length 1 · max length 60
windowThemestringone of
auto,light,dark· default"auto"cropobjectFields
zoomnumbermin 1 · max 4
focusXnumbermin 0 · max 1
focusYnumbermin 0 · max 1
alsoFormatsarray<string>at most 4 items
outputsarray<string>at least 1 items · at most 2 items · default
["png"]
Permission
Needs the posts:write scope: create drafts. It changes your workspace, so clients may ask you to confirm each call.
Example call
Your assistant sends this for you. It is shown so you can see the shape of a call, with placeholder values for the required fields.
{ "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "create_app_screenshot", "arguments": { "screenshot": {} } }}Same action over the REST API
The tool runs POST /v1/orgs/{orgId}/marketing/visuals/screenshot as the signed-in user, with the same validation, approval rules and limits. See it in the Visuals API reference.