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

# Bulk Lookup

> Enrich up to 1,000 email addresses in a single request with real-time SSE streaming.

## Authentication

Requires an API key in the `Authorization` header.

```bash theme={"dark"}
Authorization: Bearer YOUR_API_KEY
```

## Request

<ParamField body="emails" type="string[]" required>
  Array of email addresses to enrich (max 1,000).
</ParamField>

### Example request

<CodeGroup>
  ```bash cURL theme={"dark"}
  curl -X POST "https://encrata.com/api/agent/bulk-lookup" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{ "emails": ["alice@company.com", "bob@startup.io", "jane@corp.co"] }'
  ```

  ```python Python theme={"dark"}
  import requests

  resp = requests.post(
      "https://encrata.com/api/agent/bulk-lookup",
      headers={"Authorization": "Bearer YOUR_API_KEY"},
      json={"emails": ["alice@company.com", "bob@startup.io"]},
      stream=True,
  )
  for line in resp.iter_lines():
      if line:
          print(line.decode())
  ```
</CodeGroup>

## Response

Results are streamed via **Server-Sent Events (SSE)**. Each enriched record is sent as a separate event.

```
data: {"email":"alice@company.com","name":"Alice Smith","company":"Acme Inc",...}

data: {"email":"bob@startup.io","name":"Bob Jones","company":"Startup IO",...}

data: [DONE]
```

## Credits

Each successfully enriched email consumes **1 credit**. Invalid or unresolvable emails do not consume credits.

## Rate Limits

Maximum 1,000 emails per request. For larger volumes, use [Async Bulk Jobs](/guides/bulk-operations#async-bulk-jobs).
