websites

Screenshot Website

Changed on

Render up to 3 of the site's pages to images; returns short-lived signed URLs.

Renders the DRAFT (current saved content) — identical to the live site whenever has_unpublished_changes is false. Uses the shared website render core, so it is the same JS-on, full-page capture the in-app export produces. Binary delivery matches the export pattern: signed URLs, never inlined bytes.

Requires edit permission on the site (renders are an editor affordance and consume scarce browser capacity — the same gate as the in-app export).

post/websites/{website_id}/screenshot

Request

  • Base URL
    https://api.moda.app/v1
  • URL
    https://api.moda.app/v1/websites/{website_id}/screenshot
  • Auth
    HTTP bearer

Path parameters

website_idstring uuid required

Headers

Moda-Version'2026-04-12' | '2026-05-01'
Example:2026-05-01

Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.

Request body

pathsstring[]

Page route paths to capture (default: the homepage). At most 3 per call.

viewport'desktop' | 'tablet' | 'mobile'

Viewport to render at (desktop=1440, tablet=768, mobile=375 CSS px wide).

format'jpg' | 'png'

Image encoding of the captures.

scaleinteger nullable

Device scale factor (default 2; a capture over the pixel budget steps down automatically).

Response

Successful Response

object required

Changes