---
url: 'https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/ScrapperBaseConfig.md'
description: >-
  Configuration common to every Scrapper factory. `A` is the accepted `artifact`
  resolver type.
---

# Interface: ScrapperBaseConfig\<P, R, A>

Defined in: [src/batteries/tools/scrapper/shared.ts:171](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L171)

Configuration common to every Scrapper factory. `A` is the accepted `artifact` resolver type.

## Type Parameters

| Type Parameter |
| -------------- |
| `P`            |
| `R`            |
| `A`            |

## Properties

| Property                                                   | Type                                                                                                                                              | Description                                                                                                                                                                                                                                                                                                     | Defined in                                                                                                                                    |
| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
|  `artifact?`                 | `A`                                                                                                                                               | Spool-artifact resolver for the output. Default `() => SpooledJsonArtifact`.                                                                                                                                                                                                                                    | [src/batteries/tools/scrapper/shared.ts:181](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L181) |
|  `defaults?`                 | [`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)<`P`>                                                   | Model-overridable default param values.                                                                                                                                                                                                                                                                         | [src/batteries/tools/scrapper/shared.ts:189](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L189) |
|  `description?`           | `string`                                                                                                                                          | Tool description override.                                                                                                                                                                                                                                                                                      | [src/batteries/tools/scrapper/shared.ts:185](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L185) |
|  `fixed?`                       | [`Partial`](https://www.typescriptlang.org/docs/handbook/utility-types.html#partialtype)<`P`>                                                   | Pinned params — sent always, removed from the model schema.                                                                                                                                                                                                                                                     | [src/batteries/tools/scrapper/shared.ts:187](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L187) |
|  `fixedQuery?`             | [`Record`](https://www.typescriptlang.org/docs/handbook/utility-types.html#recordkeys-type)<`string`, `string`>                                 | Raw, un-modeled wire params (kebab keys) — always sent, never model-visible. Keeps the battery generic.                                                                                                                                                                                                         | [src/batteries/tools/scrapper/shared.ts:191](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L191) |
|  `gate?`                         | [`ToolGateFn`](../tools/_shared/type-aliases/ToolGateFn.md)                                                                                       | Optional per-call gate run before the HTTP request — the seam for human-approval/RBAC flows built on `ctx.waitFor` (the ADK gates primitive). Throwing aborts the call through the standard tool-error path. Scraping reaches the network on the agent's behalf, which makes every call a candidate for gating. | [src/batteries/tools/scrapper/shared.ts:198](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L198) |
|  `headers?`                   | | [`ToolHeadersResolver`](../tools/_shared/type-aliases/ToolHeadersResolver.md) | [`ToolHeaders`](../tools/_shared/type-aliases/ToolHeaders.md) | Headers sent to the Scrapper INSTANCE for auth (X-API-Key / Basic) — static or resolver.                                                                                                                                                                                                                        | [src/batteries/tools/scrapper/shared.ts:175](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L175) |
|  `inputPipeline?`       | [`ScrapperInputMiddlewareFn`](../type-aliases/ScrapperInputMiddlewareFn.md)\[]                                                                     | Stages run before the HTTP request. See [ScrapperRequestContext](ScrapperRequestContext.md).                                                                                                                                                                                                                    | [src/batteries/tools/scrapper/shared.ts:200](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L200) |
|  `instanceUrl`            | `string`                                                                                                                                          | Base URL of the Scrapper instance, e.g. `https://scrapper.example.org`. Required.                                                                                                                                                                                                                               | [src/batteries/tools/scrapper/shared.ts:173](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L173) |
|  `name?`                         | `string`                                                                                                                                          | Tool name override.                                                                                                                                                                                                                                                                                             | [src/batteries/tools/scrapper/shared.ts:183](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L183) |
|  `outputPipeline?`     | [`ScrapperOutputMiddlewareFn`](../type-aliases/ScrapperOutputMiddlewareFn.md)<`R`>\[]                                                            | Stages run after the response is parsed. See [ScrapperResponseContext](ScrapperResponseContext.md).                                                                                                                                                                                                             | [src/batteries/tools/scrapper/shared.ts:202](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L202) |
|  `requestTimeoutMs?` | `number`                                                                                                                                          | The tool's own `fetch` AbortController timeout in ms. Default `65_000` (> Scrapper's 60s browser default).                                                                                                                                                                                                      | [src/batteries/tools/scrapper/shared.ts:177](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L177) |
|  `resultFormat?`         | `"raw"` | `"normalized"` | `"either"`                                                                                                           | Output shape. `normalized`/`raw` pin it; `either` (default) exposes a `format` arg to the model.                                                                                                                                                                                                                | [src/batteries/tools/scrapper/shared.ts:179](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/tools/scrapper/shared.ts#L179) |
