Screengrab

Grab a website

Paste any URL and we'll create a screenshot or scroll-video with your webcam bubble and play button overlay.

Processing...

Your Assets

Profile Photo
Webcam Video

API Access

Use this key to generate via API:

Results

API Documentation

Authentication

All API requests require your API key in the header:

X-API-Key: YOUR_API_KEY

You can find your key in the API Access panel after logging in.

Base URL

https://screengrab.cloud

1. Generate (Async)

Starts generation in the background and returns a job ID for polling.

POST /api/generate

Request Body

{
  "url": "https://example.com",
  "format": "image",
  "photo_url": "https://...",
  "video_url": "https://..."
}
FieldTypeRequiredDescription
urlstringYesWebsite URL to capture
formatstringNo"image" (default) or "video"
photo_urlstringNoExternal URL for user profile photo overlay
video_urlstringNoExternal URL for user webcam video overlay

Response

{ "job_id": "abc-123", "status": "pending", "message": "Processing started" }

2. Generate (Sync)

Waits for generation to finish and returns the file directly. Best for automation.

POST /api/generate/sync

Request Body

Same as async endpoint above.

Response

Binary file (image/jpeg or video/mp4) with Content-Disposition header.

Example

curl -X POST https://screengrab.cloud/api/generate/sync \
  -H "X-API-Key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","format":"image"}' \
  -o result.jpg

3. Poll Job Status

GET /api/generate/jobs/:id

Response

{
  "id": "abc-123",
  "status": "completed",
  "output_format": "image",
  "website_url": "https://example.com",
  "created_at": "2026-03-16T12:00:00"
}

Possible statuses: pending, processing, completed, failed

4. Download Result

GET /api/generate/jobs/:id/download

Returns the generated file. Only available when status is completed.

5. List All Jobs

GET /api/generate/jobs

Returns an array of all your jobs, newest first.


6. Upload Asset

Upload a profile photo or webcam video to use as overlay in future generations.

POST /api/assets/upload

Request

Multipart form data with a file field.

curl -X POST https://screengrab.cloud/api/assets/upload \
  -H "X-API-Key: YOUR_KEY" \
  -F "file=@photo.jpg"

Accepted formats: jpg, png, webp, mp4, mov, webm

7. List Assets

GET /api/assets

8. Delete Asset

DELETE /api/assets/:id

Quick Start Example

Generate a screenshot with an external profile photo in one request:

curl -X POST https://screengrab.cloud/api/generate/sync \
  -H "X-API-Key: sg_demo_001_a4b7c9d2e1f6" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://stripe.com",
    "format": "image",
    "photo_url": "https://example.com/avatar.jpg"
  }' \
  -o screenshot.jpg

Rate Limits & Constraints

Max file upload50 MB
Max external media URL10 MB
External URL timeout15 seconds
Video output~4 seconds scroll GIF, 500px wide