Render screenshots in one simple API call, instead of managing browser clusters, and handling all the corner cases.
Take clean screenshots
Remove annoying banners easily. ScreenshotOne can block complex GDPR and cookie consent forms. Most cases are covered.
Render precisely as you need
Our screenshot API supports a large variety of options for customizing website screenshot rendering. No need to write custom code and logic anymore.
Take screenshots for any screen size
Your customers will be pleasantly surprised by the quality of screenshots.
Use the language you love
Send simple HTTP requests or use native libraries for your language of choice. You decide.
// add com.screenshotone.jsdk:screenshotone-api-jsdk:[1.0.0,2.0.0)// to your `pom.xml` or `build.gradle`
import com.screenshotone.jsdk.Client;import com.screenshotone.jsdk.TakeOptions;
import java.io.File;import java.nio.file.Files;
public class App { public static void main(String[] args) throws Exception { final Client client = Client.withKeys("<access key>", "<secret key>"); TakeOptions takeOptions = TakeOptions.url("https://example.com") .fullPage(true) .deviceScaleFactor(1) .viewportHeight(1200) .viewportWidth(1200) .format("png") .omitBackground(true); final String url = client.generateTakeUrl(takeOptions);
System.out.println(url); // Output: https://api.screenshotone.com/take?url=...
// or download the screenshot final byte[] image = client.take(takeOptions);
Files.write(new File("./example.png").toPath(), image); // the screenshot is stored in the example.png file }}
ScreenshotOne is the best product on the market - and that's before you take into account how responsive and easy Dmytro is to work with.
Any time we've found a rare edge case, it's been resolved in hours.
Great company, great founder - can't say enough!
Superb and exhaustive documentation, ready SDKs, no-code tools, and other automation to help you render website screenshots and outsource all the boring work related to that to us.