> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter-d02e98a0-mintlify-5b6e02fd.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# WebSearchServerTool - Go SDK

> WebSearchServerTool type definition

<Warning>
  The Go SDK and docs are currently in beta.
  Report issues on [GitHub](https://github.com/OpenRouterTeam/go-sdk/issues).
</Warning>

Web search tool configuration (2025-08-26 version)

## Fields

| Field               | Type                                                                                                                               | Required             | Description                                                                                                                                                                                                                                                                | Example                                                                                                                     |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `Engine`            | [\*components.WebSearchEngineEnum](/client-sdks/go/api-reference/models/websearchengineenum)                                       | :heavy\_minus\_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses Firecrawl (requires BYOK). "parallel" uses the Parallel search API. | auto                                                                                                                        |
| `Filters`           | optionalnullable.OptionalNullable\[[components.WebSearchDomainFilter](/client-sdks/go/api-reference/models/websearchdomainfilter)] | :heavy\_minus\_sign: | N/A                                                                                                                                                                                                                                                                        | `{"allowed_domains": ["example.com"],"excluded_domains": ["spam.com"]}`                                                     |
| `MaxResults`        | `*int64`                                                                                                                           | :heavy\_minus\_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, and Parallel engines; ignored with native provider search.                                                                                                           | 5                                                                                                                           |
| `SearchContextSize` | [\*components.SearchContextSizeEnum](/client-sdks/go/api-reference/models/searchcontextsizeenum)                                   | :heavy\_minus\_sign: | Size of the search context for web search tools                                                                                                                                                                                                                            | medium                                                                                                                      |
| `Type`              | [components.WebSearchServerToolType](/client-sdks/go/api-reference/models/websearchservertooltype)                                 | :heavy\_check\_mark: | N/A                                                                                                                                                                                                                                                                        |                                                                                                                             |
| `UserLocation`      | optionalnullable.OptionalNullable\[[components.WebSearchUserLocation](/client-sdks/go/api-reference/models/websearchuserlocation)] | :heavy\_minus\_sign: | User location information for web search                                                                                                                                                                                                                                   | `{"city": "San Francisco","country": "USA","region": "California","timezone": "America/Los_Angeles","type": "approximate"}` |
