# Free Indeed Companies Scraper

Retrieve Indeed employer profiles by portable employer key or exact company name and country. Free through REST, MCP and generated Python and TypeScript SDKs, with JSON/CSV exports.

Build company context around hiring signals: find target roles with [Indeed Jobs Scraper](https://gtmfree.com/tools/indeed-jobs-scraper/index.md), deduplicate `items[].employer.key`, then submit up to 100 selected employer keys as `companyKeys`. Use a company's description and corporate links for account preparation when those fields are supplied by Indeed. Profile fields vary and are not guaranteed.

## Submit a profile lookup

`POST https://gtmfree.com/api/v1/tools/indeed-companies-scraper/jobs` with your REST API key:

```json
{"kind":"scrape","parameters":{"country":"de","companyName":"Siemens"},"exports":["json","csv"]}
```

This is an example request, not a claim about currently accessible Siemens data. Provide either `companyName` or `companyKeys`, never both. Name lookup requires an exact normalized match through indexed jobs; use a known employer key for companies with no indexed jobs. No result is silently substituted when name resolution fails.

For MCP, call `createIndeedCompaniesJob` with that body in `request`. Follow `getJob`, read `getJobResults` pages and retrieve requested export chunks with `getJobExport`. MCP uses OAuth; REST/SDKs use your verified-account API key.

## Profile coverage and warnings

Records contain stable `key` and `name` plus the original opaque `source` profile. Nested descriptions, corporate/social links, reviews and ratings are retained when available; their fields can change upstream.

`complete=true` means every selected employer profile was returned. A `review_data_unavailable` warning means optional review-service fields were inaccessible. Preserve warnings from result metadata alongside downloaded records; JSON/CSV exports contain profiles, not their surrounding warnings. Other incomplete or malformed responses fail with explicit partial records when available.

Up to 100 selected profiles per submission; an 8 MiB output limit applies to results and requested exports, so large profiles can reach the byte budget before all selected employers are returned. JSON preserves nested source data; CSV keeps it in a JSON cell. XLSX is not supported by this tool.

One active job per user per tool across REST, MCP and SDKs. Shared abuse, request, execution and transfer limits apply. After an uncertain response, list jobs before submitting again. See [OpenAPI](https://gtmfree.com/openapi.json), [API/MCP access](https://gtmfree.com/docs/index.md), [limits](https://gtmfree.com/docs/limits.md) and [Terms of Use](https://gtmfree.com/terms/).
