Introduction

A REST API for screenshots, scraping, and page-change monitoring — one key, one base URL, every output.

What ByteKit is

ByteKit is a REST API for capturing what a webpage looks like and what it says — screenshots, scrolling recordings, raw HTML or clean markdown, and page-change monitoring. One API key, one base URL, every output you'd otherwise stitch together from a headless-browser farm and a scraping proxy.

What you can do with it

  • Scrape — Fetch a URL as raw HTML, clean markdown, or structured content.
  • Screenshot — Capture full-page or viewport PNG/JPEG.
  • Record — Generate a scrolling video of a page.
  • Monitor — Watch a URL on a schedule and webhook you when the rendered output changes.
  • Bulk — Fan out thousands of URLs in parallel and receive a webhook as each finishes.
  • Sitemap — Discover URLs from a domain's sitemap or by light crawling.

Scrape calls accept an "async": true body field, in which case the API returns 202 with a sc_… ID that you poll or receive via webhook. Screenshots are synchronous by default (the call holds up to 28s and returns 200); pass the ?async=true query parameter to get back 202 with an ss_… ID immediately. Recordings are always async — they return 202 with a rec_… ID, with no async field to set.

Authentication and accounts

Every request carries a Bearer API key, prefixed sk_live_. Manage keys from the dashboard — up to 50 active keys per account, with per-key billing attribution so you can split usage cleanly across services.

Full details in the Authentication guide.

Where to go next

  • Quickstart — first call in under five minutes, no SDK required.
  • Client Libraries — official TypeScript and Python SDKs.
  • Scraping — formats, options, async polling.
  • Rate Limits — quota model, concurrency slots, response headers.
  • Monitors — schedule-based change detection with webhooks.
  • API Reference — every endpoint, request, and response.