CreateScreenshotFromUrlBody

The `CreateScreenshotFromUrlBody` entity.

Definition

TypeScript
interface CreateScreenshotFromUrlBody {
  workspaceId: string;
  url: string;
  directoryId?: string | undefined;
  name?: string | undefined;
  ttlMs?: number | null | undefined;
  browser?:
    | {
        viewport?: { width: number; height: number } | undefined;
        waitForSelector?:
          | {
              selector: string;
              hidden?: boolean | undefined;
              timeout?: number | undefined;
            }
          | undefined;
        waitForTimeout?: number | undefined;
        userAgent?: string | undefined;
        authenticate?: { username: string; password: string } | undefined;
        cookies?:
          | Array<{
              [x: string]: unknown;
              name: string;
              value: string;
              url?: string | undefined;
              domain?: string | undefined;
              path?: string | undefined;
            }>
          | undefined;
        extraHeaders?: Record<string, string> | undefined;
        gotoOptions?:
          | {
              waitUntil?:
                | "load"
                | "domcontentloaded"
                | "networkidle0"
                | "networkidle2"
                | undefined;
              timeout?: number | undefined;
              referer?: string | undefined;
            }
          | undefined;
        bestAttempt?: boolean | undefined;
        allowRequestPattern?: Array<string> | undefined;
        rejectRequestPattern?: Array<string> | undefined;
        allowResourceTypes?: Array<string> | undefined;
        rejectResourceTypes?: Array<string> | undefined;
        setJavaScriptEnabled?: boolean | undefined;
      }
    | undefined;
  screenshot?:
    | {
        type?: "png" | "jpeg" | "webp" | undefined;
        quality?: number | undefined;
        fullPage?: boolean | undefined;
        omitBackground?: boolean | undefined;
        selector?: string | undefined;
        captureBeyondViewport?: boolean | undefined;
      }
    | undefined;
}

Fields

FieldTypeNotes
workspaceIdstringrequired — Workspace that will own the generated screenshot.
urlstringrequired — URL to screenshot.
directoryIdstring | undefinedoptional — Destination directory. Defaults to the workspace root. When omitted the file defaults to temp (1 day TTL); when set the file is permanent unless ttlMs is also provided.
namestring | undefinedoptional — Filename. Defaults to <hostname>-<yyyy-mm-dd>.<ext> derived from the URL (ext matches screenshot.type, default png).
ttlMsnumber | null | undefinedoptional
browser{ viewport?: { width: number; height: number; } | undefined; waitForSelector?: { selector: string; hidden?: boolean | undefined; timeout?: number | undefined; } | undefined; waitForTimeout?: number | undefined; userAgent?: string | undefined; authenticate?: { username: string; password: string; } | undefined; cookies?: Array<{ [x: string]: unknown; name: string; value: string; url?: string | undefined; domain?: string | undefined; path?: string | undefined; }> | undefined; extraHeaders?: Record<string, string> | undefined; gotoOptions?: { waitUntil?: "load" | "domcontentloaded" | "networkidle0" | "networkidle2" | undefined; timeout?: number | undefined; referer?: string | undefined; } | undefined; bestAttempt?: boolean | undefined; allowRequestPattern?: Array<string> | undefined; rejectRequestPattern?: Array<string> | undefined; allowResourceTypes?: Array<string> | undefined; rejectResourceTypes?: Array<string> | undefined; setJavaScriptEnabled?: boolean | undefined; } | undefinedoptional — Shared browser render options (viewport, waits, auth, etc.).
screenshot{ type?: "png" | "jpeg" | "webp" | undefined; quality?: number | undefined; fullPage?: boolean | undefined; omitBackground?: boolean | undefined; selector?: string | undefined; captureBeyondViewport?: boolean | undefined; } | undefinedoptional — Screenshot-specific options (type, quality, full-page, selector, …).