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

# Search Articles

> Full-text search across article titles, subtitles, and summaries

## Description

Searches articles by keyword across titles, subtitles, and summaries. Supports all standard filters to narrow results. Minimum query length is 2 characters.

## Headers

<ParamField header="X-API-Key" type="string" required>
  Your Rushed API key
</ParamField>

## Query Parameters

<ParamField query="q" type="string" required>
  Search query (minimum 2 characters)
</ParamField>

<ParamField query="include" type="string">
  Comma-separated enrichment modules
</ParamField>

<ParamField query="primarySector" type="string">
  Filter by sector code
</ParamField>

<ParamField query="primaryTopic" type="string">
  Filter by topic code
</ParamField>

<ParamField query="publishedAfter" type="string">
  ISO 8601 datetime
</ParamField>

<ParamField query="publishedBefore" type="string">
  ISO 8601 datetime
</ParamField>

<ParamField query="limit" type="integer" default="20">
  Results per page (1–100)
</ParamField>

<ParamField query="offset" type="integer" default="0">
  Number of results to skip
</ParamField>

## Response

<ResponseField name="success" type="boolean" required />

<ResponseField name="data" type="array" required>
  Array of matching articles
</ResponseField>

<ResponseField name="pagination" type="object" required>
  Pagination metadata
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl "https://worker.rushed.com.br/api/articles/search?q=petrobras+dividendos&include=sentiment,entities&limit=10" \
    -H "X-API-Key: rsh_live_xxxxxxxxxxxx"
  ```

  ```javascript Node.js theme={null}
  const res = await fetch(
    'https://worker.rushed.com.br/api/articles/search?q=petrobras+dividendos&include=sentiment,entities&limit=10',
    { headers: { 'X-API-Key': 'rsh_live_xxxxxxxxxxxx' } }
  );
  const { data } = await res.json();
  ```

  ```python Python theme={null}
  import requests

  res = requests.get(
      'https://worker.rushed.com.br/api/articles/search',
      params={'q': 'petrobras dividendos', 'include': 'sentiment,entities', 'limit': 10},
      headers={'X-API-Key': 'rsh_live_xxxxxxxxxxxx'}
  )
  results = res.json()['data']
  ```
</RequestExample>

<ResponseExample>
  ```json 200 — Success theme={null}
  {
    "success": true,
    "data": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "sourceName": "Valor Economico",
        "title": "Petrobras aprova dividendos extraordinarios de R$72 bilhoes",
        "publishedAt": "2026-03-28T14:30:00Z",
        "primarySector": "FIN",
        "primaryTopic": "DIV",
        "contentType": "BREAKING",
        "urgencyLevel": "HIGH",
        "isBreaking": true,
        "language": "pt",
        "sentimentScore": 0.82,
        "sentimentLabel": "MUITO_POSITIVO",
        "entities": [
          {
            "entityType": "COMPANY",
            "canonicalName": "Petrobras",
            "ticker": "PETR4",
            "mentionCount": 15,
            "prominenceScore": 0.98,
            "isInTitle": true
          }
        ]
      }
    ],
    "pagination": {
      "limit": 10,
      "offset": 0,
      "total": 23,
      "hasMore": true
    }
  }
  ```
</ResponseExample>
