Screen.rip

Programmable Screenshot API

Take 10,000 shots for $7 Learn how to use

How to use

Use Screen.rip to build...

Want to see how it works? Play with the samples below. Change the URLs to any site you like.

Simple GET request

Making a GET request is the easiest way to take a screenshot. Provide the URL of the page as a query string.

curl -X GET \
"https://screen.rip/capture?token=YOUR_TOKEN&url=https://producthunt.com"

Clip part of the page

You can configure how to capture the screenshot. Pass the configuration options as a POST request.

In the example, we pass a CSS selector to clip the screenshot to capture only the tweet popup.

curl -X POST \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "url": "https://twitter.com/BarackObama/status/896523232098078720",
  "clip": ".permalink-tweet-container",
  "format": "jpg",
  "quality": 90
}' \
"https://screen.rip/capture"

Run custom scripts

The API supports running a script before taking the screenshot.

In the example, we run a script to scroll to a specific section of the page and then highlight a paragraph of the article before taking the screenshot.

curl -X POST \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "url": "http://cosmos.nautil.us/short/138/if-you-cant-find-dark-matter-look-first-for-a-dark-force",
  "runjs": "window.scroll(0, 2200); var r = document.createRange(); var p = document.querySelector(\"article p:nth-of-type(4)\"); r.selectNode(p); window.getSelection().addRange(r);"
}' \
"https://screen.rip/capture"

Generate PDFs

You can use the API to generate PDFs of web pages.

In the example, we use print a page to an A4. Note how we can use runjs option to remove elements from the page to improve readability.

curl -X POST \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
  "url": "http://www.paulgraham.com/ramenprofitable.html",
  "format": "pdf",
  "runjs": "document.querySelector(\"table tbody img\").remove()",
  "pdf": { "scale": 2, "format": "A4" }
}' \
"https://screen.rip/capture"

More options

View complete documentation

Screen.rip runs each request in a separate browser context and doesn't retain any data from a session.

Get a token

A token will be valid for 365 days. You can make 10,000 successful requests.

Capturing screenshot
Failed to capture the screenshot.

🎉 Thanks for the payment

Here is your token (it was also emailed to you):