screenshotone-api-sdk
v1.1.18
Published
Use ScreenshotOne.com API to generate screenshots of any website.
Downloads
7,860
Maintainers
Readme
jssdk
An official Screenshot API client for JavaScript and TypeScript.
It takes minutes to start taking screenshots. Just sign up to get access and secret keys, import the client, and you are ready to go.
The SDK client is synchronized with the latest screenshot API options.
Installation
npm install screenshotone-api-sdk --save
Usage
Generate a screenshot URL without executing the request. Or download the screenshot. It is up to you:
import * as fs from 'fs';
import * as screenshotone from 'screenshotone-api-sdk';
// create API client
const client = new screenshotone.Client("<access key>", "<secret key>");
// set up options
const options = screenshotone.TakeOptions
.url("https://example.com")
.delay(3)
.blockAds(true);
// generate URL
const url = client.generateTakeURL(options);
console.log(url);
// expected output: https://api.screenshotone.com/take?url=https%3A%2F%2Fexample.com&delay=3&block_ads=true&access_key=%3Caccess+key%3E&signature=7f3419ece2c53ed2c7923c7d5deef290d662c3643822bf69ec8259ce10b3ea61
// download the screenshot and handle potential API errors
try {
const imageBlob = await client.take(options);
const buffer = Buffer.from(await imageBlob.arrayBuffer());
fs.writeFileSync("example.png", buffer);
} catch (error) {
if (error instanceof screenshotone.APIError) {
// An API error occurred with
// HTTP Status Code: error.httpStatusCode
// Error Code: error.errorCode
// Error Message: error.errorMessage
// Documentation URL: error.documentationUrl
} else {
// An unexpected error occurred
console.error("An unexpected error occurred:", error.message);
}
}
Build and publish (a manual for SDK developers)
To build and publish the SDK:
- Bump the version property in the
package.json
file. - Run
npm run prepare
. - Run
npm publish
.
License
screenshotone/jssdk
is released under the MIT license.