---
type: "firecrawl-provider"
description: "Job postings, company search by technology, and one company's technologies and buying intents."
use_when: "Recent job postings by company, title, country, technology, or posting age.\n\nCompany search by technology and firmographics, and one company's technologies and buying intents from its job postings."
categories: "Jobs"
capabilities: 4
pricing: "10–30 credits per billed unit; see each capability for its unit and maximum."
---
# TheirStack on Firecrawl Alexandria

Job postings, company search by technology, and one company's technologies and buying intents.

- Categories: Jobs
- Category index: [Jobs category](https://alexandria.firecrawl.dev/agents/categories/jobs)
- Provider key: `theirstack`
- Access: Firecrawl credits
- Cost (Job search): 10 credits per job returned
- Cost (Company search): 30 credits per company returned
- Cost (Company technologies): 30 credits per company lookup with data
- Cost (Company buying intents): 30 credits per company lookup with data

## More

- [Human guide](https://www.firecrawl.dev/app/alexandria/theirstack)
- [OpenAPI spec](https://alexandria.firecrawl.dev/agents/providers/theirstack/openapi.json)

## Capabilities

- [Job search](https://alexandria.firecrawl.dev/agents/providers/theirstack/jobs/search): Jobs under data, with metadata beside them. Fields are TheirStack's own. company_object drops technology_slugs and keeps the first 25 technology_names; its num_technologies is the full count.
- [Company search](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/search): Companies under data, with metadata beside them. Fields are TheirStack's own, except technology_slugs is dropped and technology_names keeps the first 25; num_technologies is the full count.
- [Company technologies](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/technologies): Technologies under data, with metadata beside them. Fields are TheirStack's own and are passed through unchanged.
- [Company buying intents](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/buying-intents): Buying-intent topics under data, with metadata beside them. Fields are TheirStack's own and are passed through unchanged.

## 1. Choose this provider when

Recent job postings by company, title, country, technology, or posting age.

Company search by technology and firmographics, and one company's technologies and buying intents from its job postings.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "theirstack",
  "capability": "jobs/search",
  "options": {
    "posted_at_max_age_days": 10,
    "limit": 10
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `company_domain_or` (string[]): Jobs at any of these company domains, such as stripe.com. Example: `[]`
- `company_name_or` (string[]): Jobs at any of these company names, matched exactly. Example: `[]`
- `posted_at_max_age_days` (number): Jobs posted within this many days, such as 30. Example: `10`
- `job_title_or` (string[]): Jobs whose title matches any of these, such as Software Engineer. Example: `[]`
- `job_country_code_or` (string[]): Jobs in any of these ISO 3166-1 alpha-2 countries, such as US. Example: `[]`
- `job_technology_slug_or` (string[]): Jobs that mention any of these technology slugs, such as python. Example: `[]`
- `page` (number): Zero-based page number. Example: `10`
- `limit` (number): Jobs per page, 1 to 100. Defaults to 25. Each job returned is billed. Example: `10`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "theirstack",
    capability: "jobs/search",
    options: {
      posted_at_max_age_days: 10,
      limit: 10,
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "theirstack",
  "capability": "jobs/search",
  "options": {
    "posted_at_max_age_days": 10,
    "limit": 10
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "theirstack",
    "capability": "jobs/search",
    "options": {
      "posted_at_max_age_days": 10,
      "limit": 10
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'theirstack/jobs/search' \
  --options '{"posted_at_max_age_days":10,"limit":10}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "theirstack",
  "capability": "jobs/search",
  "options": {
    "posted_at_max_age_days": 10,
    "limit": 10
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "theirstack",
  "capability": "jobs/search",
  "options": {
    "posted_at_max_age_days": 10,
    "limit": 10
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "data": [
    {
      "id": 0,
      "job_title": "<job_title>",
      "url": "<url>",
      "date_posted": "<date_posted>",
      "company": "<company>",
      "company_domain": "<company_domain>",
      "country_code": "<country_code>",
      "location": "<location>",
      "remote": false,
      "technology_slugs": [],
      "company_object": {}
    }
  ]
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Job search

- Capability: `jobs/search`
- Description: Jobs under data, with metadata beside them. Fields are TheirStack's own. company_object drops technology_slugs and keeps the first 25 technology_names; its num_technologies is the full count.
- Instructions: Search recent job postings by company, title, country, technology, or posting age. Send posted_at_max_age_days, company_domain_or, or company_name_or. 20 credits per job returned, up to 100 per page; an empty page costs nothing. Use companies/search to find companies instead of postings.
- Cost: 10 credits per job returned
- Capability file: [Job search](https://alexandria.firecrawl.dev/agents/providers/theirstack/jobs/search)

Accepted options:
- `company_domain_or` (string[]): Jobs at any of these company domains, such as stripe.com. Example: `[]`
- `company_name_or` (string[]): Jobs at any of these company names, matched exactly. Example: `[]`
- `posted_at_max_age_days` (number): Jobs posted within this many days, such as 30. Example: `10`
- `job_title_or` (string[]): Jobs whose title matches any of these, such as Software Engineer. Example: `[]`
- `job_country_code_or` (string[]): Jobs in any of these ISO 3166-1 alpha-2 countries, such as US. Example: `[]`
- `job_technology_slug_or` (string[]): Jobs that mention any of these technology slugs, such as python. Example: `[]`
- `page` (number): Zero-based page number. Example: `10`
- `limit` (number): Jobs per page, 1 to 100. Defaults to 25. Each job returned is billed. Example: `10`

Response schema example:
```json
{
  "data": [
    {
      "id": 0,
      "job_title": "<job_title>",
      "url": "<url>",
      "date_posted": "<date_posted>",
      "company": "<company>",
      "company_domain": "<company_domain>",
      "country_code": "<country_code>",
      "location": "<location>",
      "remote": false,
      "technology_slugs": [],
      "company_object": {}
    }
  ]
}
```

### Company search

- Capability: `companies/search`
- Description: Companies under data, with metadata beside them. Fields are TheirStack's own, except technology_slugs is dropped and technology_names keeps the first 25; num_technologies is the full count.
- Instructions: Find companies by domain, name, headquarters country, technology used, or headcount. 60 credits per company returned, up to 100 per page; an empty page costs nothing. Use companies/technologies for one known company's full stack.
- Cost: 30 credits per company returned
- Capability file: [Company search](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/search)

Accepted options:
- `company_domain_or` (string[]): Companies with any of these domains, such as stripe.com. Example: `[]`
- `company_name_or` (string[]): Companies with any of these names, matched exactly. Example: `[]`
- `company_country_code_or` (string[]): Companies headquartered in any of these ISO 3166-1 alpha-2 countries, such as US. Example: `[]`
- `company_technology_slug_or` (string[]): Companies that use any of these technology slugs, such as python. Example: `[]`
- `min_employee_count` (number): Companies with at least this many employees. Example: `10`
- `page` (number): Zero-based page number. Example: `10`
- `limit` (number): Companies per page, 1 to 100. Defaults to 25. Each company returned is billed. Example: `10`

Response schema example:
```json
{
  "data": [
    {
      "id": "<id>",
      "name": "<name>",
      "domain": "<domain>",
      "url": "<url>",
      "country_code": "<country_code>",
      "industry": "<industry>",
      "employee_count": 0,
      "linkedin_url": "<linkedin_url>",
      "num_technologies": 0,
      "technology_names": []
    }
  ]
}
```

### Company technologies

- Capability: `companies/technologies`
- Description: Technologies under data, with metadata beside them. Fields are TheirStack's own and are passed through unchanged.
- Instructions: List the technologies one company uses, inferred from its job postings, with confidence, job counts, and first and last dates seen. Identify the company by exactly one of company_domain, company_name, or company_linkedin_url. 60 credits when rows come back, whatever the count; no rows costs nothing.
- Cost: 30 credits per company lookup with data
- Capability file: [Company technologies](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/technologies)

Accepted options:
- `company_domain` (string): The company's domain, such as stripe.com. Example: `<company_domain>`
- `company_name` (string): The company's name, matched exactly and case-sensitively. Example: `<company_name>`
- `company_linkedin_url` (string): The company's LinkedIn URL. Example: `<company_linkedin_url>`
- `limit` (number): Technologies per page. Does not change the price. Example: `10`
- `page` (number): Zero-based page number. Example: `10`

Response schema example:
```json
{
  "data": [
    {
      "technology": {},
      "confidence": "<confidence>",
      "jobs": 0,
      "jobs_last_30_days": 0,
      "first_date_found": "<first_date_found>",
      "last_date_found": "<last_date_found>"
    }
  ]
}
```

### Company buying intents

- Capability: `companies/buying-intents`
- Description: Buying-intent topics under data, with metadata beside them. Fields are TheirStack's own and are passed through unchanged.
- Instructions: List the buying-intent topics detected in one company's recent job postings, with confidence, job counts, and first and last dates seen. Identify the company by exactly one of company_domain, company_name, or company_linkedin_url. 60 credits when rows come back, whatever the count; no rows costs nothing.
- Cost: 30 credits per company lookup with data
- Capability file: [Company buying intents](https://alexandria.firecrawl.dev/agents/providers/theirstack/companies/buying-intents)

Accepted options:
- `company_domain` (string): The company's domain, such as stripe.com. Example: `<company_domain>`
- `company_name` (string): The company's name, matched exactly and case-sensitively. Example: `<company_name>`
- `company_linkedin_url` (string): The company's LinkedIn URL. Example: `<company_linkedin_url>`
- `limit` (number): Topics per page. Does not change the price. Example: `10`
- `page` (number): Zero-based page number. Example: `10`

Response schema example:
```json
{
  "data": [
    {
      "technology": {},
      "confidence": "<confidence>",
      "jobs": 0,
      "jobs_last_30_days": 0,
      "first_date_found": "<first_date_found>",
      "last_date_found": "<last_date_found>"
    }
  ]
}
```
