# Blocking options

> Reference for the blocking options of the shotkit screenshot API, with an example request for each.

Remove clutter. Host lists block requests before they load; cookie banner and chat blocking also hide known elements with CSS.

### `block_cookie_banners`

Hide cookie / GDPR banners. Blocks known consent-manager scripts (OneTrust, Cookiebot, Didomi, …), hides their elements, and restores page scrolling they may have locked.

Type: `boolean` · Default: `false`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_cookie_banners":true}' \
  --fail-with-body -o shot.jpg
```

### `block_banners_by_heuristics`

Aggressive heuristic banner removal. Also removes fixed or sticky overlays that look like banners or modals. Aggressive: check the result on your pages.

Type: `boolean` · Default: `false`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_cookie_banners":true,"block_banners_by_heuristics":true}' \
  --fail-with-body -o shot.jpg
```

### `block_chats`

Hide chat widgets (Intercom, Crisp, Drift…).

Type: `boolean` · Default: `false`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_chats":true}' \
  --fail-with-body -o shot.jpg
```

### `block_ads`

Block ad networks.

Type: `boolean` · Default: `false`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_ads":true}' \
  --fail-with-body -o shot.jpg
```

### `block_trackers`

Block analytics / trackers.

Type: `boolean` · Default: `false`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_trackers":true}' \
  --fail-with-body -o shot.jpg
```

### `block_requests`

Block requests matching wildcard patterns. `*` matches any characters. Matched against the full request URL. The page itself is never blocked.

Type: `list`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_requests":["*.doubleclick.net/*","*/analytics.js"]}' \
  --fail-with-body -o shot.jpg
```

### `block_resources`

Block resource types.

Type: `enum list`

Values: `document`, `stylesheet`, `image`, `media`, `font`, `script`, `texttrack`, `xhr`, `fetch`, `eventsource`, `websocket`, `manifest`, `other`

```bash
curl -X POST "https://shotkit.net/api/take" \
  -H "X-Access-Key: YOUR_ACCESS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com","block_resources":["media","font"]}' \
  --fail-with-body -o shot.jpg
```
