> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrape.st/llms.txt
> Use this file to discover all available pages before exploring further.

# Web Search

> Search the web and get structured results

Run a web search and get structured results (title, URL, description, position). Runs synchronously.

## Request Body

<ParamField body="query" type="string" required>
  The search query. 1–1000 characters.
</ParamField>

<ParamField body="limit" type="number" default="10">
  Maximum number of results. Between `1` and `100`.
</ParamField>

<ParamField body="location" type="string" default="US">
  Country code to localize results.
</ParamField>

<ParamField body="language" type="string" default="en">
  Result language.
</ParamField>

<ParamField body="timeout" type="number">
  Max time in milliseconds to wait. Between `1000` and `600000`.
</ParamField>

## Response

<ResponseField name="data" type="object">
  `data` — array of results, each with `title`, `url`, `description`, and
  `position`.
</ResponseField>

<RequestExample>
  ```bash theme={null}
  curl -X POST https://scrape.st/web/search \
    -H "x-api-key: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "query": "best coffee in lisbon",
      "limit": 5
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "search_id": "sch_01HZX...",
    "version": "1.0.0",
    "status": "completed",
    "query": "best coffee in lisbon",
    "data": {
      "data": [
        {
          "title": "The 10 Best Coffee Shops in Lisbon",
          "url": "https://example.com/lisbon-coffee",
          "description": "A curated guide to specialty coffee in Lisbon...",
          "position": 1
        }
      ]
    }
  }
  ```
</ResponseExample>
