---
title: "Start a bulk job (up to 500 URLs)"
method: POST
path: "/v1/bulk"
---

# Start a bulk job (up to 500 URLs)

`POST /v1/bulk`

## Request

- Base URL: `https://shotlane.dev`
- URL: `https://shotlane.dev/v1/bulk`
- Auth: one of:
  - API key in header `X-API-Key`
  - API key in query parameter `access_key`

## Request body

- object
  - `urls` string[], required
  - `mode` 'png' | 'jpeg' | 'pdf' | 'markdown'
  - `full_page` boolean
  - `device` 'desktop' | 'desktop_hd' | 'laptop' | 'ipad' | 'iphone' | 'iphone_se' | 'pixel' | 'galaxy'
  - `webhook_url` string: https URL; receives a signed POST when the job ends

## Response `202`

Job started

## Other responses

- `400`: Invalid parameters
- `401`: Invalid API key
- `402`: Out of credits
- `422`: Page could not be rendered

---

[API](https://skmtc.dev/shotlane/apis/shotlane-api.md) · [All operations](https://skmtc.dev/shotlane/apis/shotlane-api/llms.txt) · [OpenAPI document](https://skmtc.dev/shotlane/apis/shotlane-api/revisions/ce3f76e12e11?raw)
