# Fundable — Orthogonal API

> Pay-per-use API on Orthogonal. Each call is billed to your Orthogonal balance.
> Base API: `https://api.orth.sh/v1/run` · [llms.txt](https://orthogonal.com/llms.txt) · [browse all APIs](https://orthogonal.com/discover)

Real-time venture capital deals, startup, and investor data. Search funding rounds, discover companies, analyze investors, and track deal flow with advanced filtering and AI-powered semantic search.

**Verified:** yes

## Access

**Run API:** `POST https://api.orth.sh/v1/run`
**Auth:** `Authorization: Bearer $ORTHOGONAL_API_KEY`
Get an API key at https://orthogonal.com/dashboard/settings/api-keys

Every call goes through the unified Run API: send the API `slug`, the endpoint `path`, and the `query`/`body` parameters. The response is `{ "success": true, "price": "<usd>", "data": { ... } }`.

## Endpoints

### Get Deal

Get funding round by id

`GET /deals/{id}`

**Estimated cost:** $0.066

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | Yes | Path parameter — substitute directly into the endpoint `path`. |
| `id` | string | Yes | Deal UUID (path parameter) |

```bash
# Replace {id} in "path" with real values before sending
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/deals/{id}","method":"GET","query":{"id":"<string>"}}'
```

### Get Deal Investors

Get investors in a funding round by id

`GET /deals/{id}/investors`

**Estimated cost:** $0.066

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | Yes | Path parameter — substitute directly into the endpoint `path`. |
| `id` | string | Yes | Deal UUID (path parameter) |

```bash
# Replace {id} in "path" with real values before sending
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/deals/{id}/investors","method":"GET","query":{"id":"<string>"}}'
```

### Get Investor

Get investor by id

`GET /investor`

**Estimated cost:** $0.066

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | No | Investor UUID |
| `domain` | string | No | Investor domain or URL |
| `linkedin` | string | No | LinkedIn company URL |
| `crunchbase` | string | No | Crunchbase organization URL |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/investor","method":"GET","query":{"id":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>"}}'
```

### Search Investors

Search for an investor id using fuzzy match or other identifiers

`GET /investor/search`

**Estimated cost:** $0.011

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | string | No | Fuzzy search by investor name |
| `domain` | string | No | Exact match by investor domain |
| `linkedin` | string | No | Match by LinkedIn company URL |
| `crunchbase` | string | No | Match by Crunchbase organization URL |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/investor/search","method":"GET","query":{"name":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>"}}'
```

### Search Industries

Search for industry permalinks to filter by

`GET /industry/search`

**Cost:** Free

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | string | Yes | Industry name to search for |
| `type` | string | No | Filter by type: INDUSTRY or SUPER_CATEGORY |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/industry/search","method":"GET","query":{"name":"<string>","type":"<string>"}}'
```

### Search Locations

Search for location permalinks to filter by

`GET /location/search`

**Cost:** Free

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | string | Yes | Location name to search for |
| `type` | string | No | Filter by type: CITY, STATE, REGION, or COUNTRY |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/location/search","method":"GET","query":{"name":"<string>","type":"<string>"}}'
```

### Get Company

Get company by id, includes latest funding round

`GET /company`

**Estimated cost:** $0.066

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | No | Company UUID |
| `domain` | string | No | Company domain or URL (e.g. stripe.com) |
| `linkedin` | string | No | LinkedIn company URL |
| `crunchbase` | string | No | Crunchbase organization URL |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/company","method":"GET","query":{"id":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>"}}'
```

### Search Companies

Search for company id using fuzzy match or other identifiers

`GET /company/search`

**Estimated cost:** $0.011

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `name` | string | No | Fuzzy search by company name |
| `domain` | string | No | Exact match by company domain |
| `linkedin` | string | No | Match by LinkedIn company URL |
| `crunchbase` | string | No | Match by Crunchbase organization URL |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/company/search","method":"GET","query":{"name":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>"}}'
```

### List Investors

Search for investors using filters

`POST /investors`

**Estimated cost:** Dynamic — use `"dryRun": true` in the Run API request to check the exact cost before calling.

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `identifiers` | object | No | Lookup by ids, domains, linkedin_urls, crunchbase_urls (max 100 each) |
| `investor` | object | No | Investor entity filters: locations, employee_count |
| `company_investments` | object | No | Portfolio filters: company_ids, industries, super_categories, locations, employee_count, ipo_status, total_raised_min/max, financing_types, deal_size_min/max, deal_start_date, deal_end_date, only_lead_deals, min_matching_deals |
| `page` | number | No | Page number (0-based, default 0) |
| `page_size` | number | No | Results per page (1-100, default 25) |
| `sort_by` | string | No | Sort order: most_recent_deal, oldest_deal, most_deals, fewest_deals |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/investors","body":{"identifiers":"<object>","investor":"<object>","company_investments":"<object>","page":"<number>","page_size":"<number>","sort_by":"<string>"}}'
```

### Get Company Deals

Get entire funding history for a company

`GET /company/deals`

**Estimated cost:** Dynamic — use `"dryRun": true` in the Run API request to check the exact cost before calling.

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | No | Company UUID |
| `domain` | string | No | Company domain or URL |
| `linkedin` | string | No | LinkedIn company URL |
| `crunchbase` | string | No | Crunchbase organization URL |
| `page` | number | No | Page number (0-based) |
| `page_size` | number | No | Results per page (1-100) |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/company/deals","method":"GET","query":{"id":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>","page":"<number>","page_size":"<number>"}}'
```

### Get Investor Deals

Get investment firm's portfolio of investments

`GET /investor/deals`

**Estimated cost:** Dynamic — use `"dryRun": true` in the Run API request to check the exact cost before calling.

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `id` | string | No | Investor UUID |
| `domain` | string | No | Investor domain or URL |
| `linkedin` | string | No | LinkedIn company URL |
| `crunchbase` | string | No | Crunchbase organization URL |
| `page` | number | No | Page number (0-based) |
| `page_size` | number | No | Results per page (1-100) |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/investor/deals","method":"GET","query":{"id":"<string>","domain":"<string>","linkedin":"<string>","crunchbase":"<string>","page":"<number>","page_size":"<number>"}}'
```

### List Companies

Search for companies using filters, includes latest funding round

`POST /companies`

**Estimated cost:** Dynamic — use `"dryRun": true` in the Run API request to check the exact cost before calling.

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `identifiers` | object | No | Lookup by ids, domains, linkedin_urls, or crunchbase_urls (max 100 each) |
| `company` | object | No | Company filters: search_query (AI semantic search), min_relevance, locations, industries, super_categories, employee_count, total_raised_min, total_raised_max, ipo_status |
| `latest_deal` | object | No | Latest funding round filters: financing_types, size_min, size_max, date_start, date_end, investor_ids |
| `investors` | object | No | Filter by investors across all rounds: investor_ids |
| `page` | number | No | Page number (0-based, default 0) |
| `page_size` | number | No | Results per page (1-100, default 10) |
| `sort_by` | string | No | Sort order: most_recent_raise, oldest_raise, most_recent_founded, oldest_founded, largest_valuation, smallest_valuation, largest_total_raise, smallest_total_raise, most_funding_rounds, most_investors. Ignored when search_query is provided (sorted by relevance). |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/companies","body":{"identifiers":"<object>","company":"<object>","latest_deal":"<object>","investors":"<object>","page":"<number>","page_size":"<number>","sort_by":"<string>"}}'
```

### Search Deals

Search for funding rounds using filters

`POST /deals`

**Estimated cost:** Dynamic — use `"dryRun": true` in the Run API request to check the exact cost before calling.

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `identifiers` | object | No | Look up specific deals by UUID. Contains deal_ids array. |
| `deal` | object | No | Deal filters: financing_types (array of {type, pre, extension}), size_min, size_max, date_start, date_end, created_start, created_end |
| `company` | object | No | Company filters: company_ids, locations, industries, super_categories, employee_count, total_raised_min, total_raised_max, ipo_status |
| `investors` | object | No | Investor filters: investor_ids array |
| `page` | number | No | Page number (0-based, default 0) |
| `page_size` | number | No | Results per page (1-100, default 10) |
| `sort_by` | string | No | Sort order: most_recent_deal, oldest_deal, largest_raise, smallest_raise |

```bash
curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api":"fundable","path":"/deals","body":{"identifiers":"<object>","deal":"<object>","company":"<object>","investors":"<object>","page":"<number>","page_size":"<number>","sort_by":"<string>"}}'
```

---

Full details and an interactive quickstart: https://orthogonal.com/discover/fundable
