screenshotbase-js
v0.1.0
Published
Node.js client for the screenshotbase.com API (status, render)
Maintainers
Readme
screenshotbase-js
Node.js client for the screenshotbase.com API.
- Website:
https://screenshotbase.com/ - Docs:
https://screenshotbase.com/docs/
This SDK wraps the public endpoints and supports authentication via apikey header (default) or apikey query parameter.
Installation
npm install screenshotbase-js
# or
yarn add screenshotbase-js
# or
pnpm add screenshotbase-jsQuickstart
import ScreenshotBaseClient from 'screenshotbase-js';
const client = new ScreenshotBaseClient({ apiKey: process.env.SCREENSHOTBASE_API_KEY });
// Check API status and quota
const status = await client.status();
console.log(status);
// Render a website screenshot
const screenshot = await client.render({
url: 'https://example.com',
full_page: true,
viewport: '1366x768',
format: 'png'
});
console.log(screenshot);Authentication
You can pass your API key via an apikey header (default) or as a query parameter.
// Header-based (default)
const client = new ScreenshotBaseClient({ apiKey: 'your_api_key' });
// Query-param based
const clientQueryAuth = new ScreenshotBaseClient({ apiKey: 'your_api_key', authInQuery: true });API
All methods return parsed JSON (as returned by the API). Errors throw with error.status and error.details.
status()- Retrieves API availability and quota information.
render(params)- Example:
{ url: 'https://example.com', viewport: '1366x768', full_page: true, format: 'png' } - Refer to the official docs for all parameters:
https://screenshotbase.com/docs/
- Example:
Configuration
const client = new ScreenshotBaseClient({
apiKey: 'your_api_key',
baseUrl: 'https://api.screenshotbase.com/v1',
authInQuery: false,
timeoutMs: 30_000,
defaultHeaders: { 'X-App': 'my-app' }
});Error handling
try {
const res = await client.render({ url: 'https://example.com' });
} catch (err) {
console.error('Request failed', err.status, err.details);
}License
MIT
