Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,20 @@
"pages": [
"v3/expert-models/features/video/generation-async"
]
},
{
"group": "Web Features",
"icon": "globe",
"expanded": false,
"pages": [
"v3/expert-models/features/web/scraping",
"v3/expert-models/features/web/map",
"v3/expert-models/features/web/search",
"v3/expert-models/features/web/crawl-async",
"v3/expert-models/features/web/batch-scrape-async",
"v3/expert-models/features/web/structured-extraction-async",
"v3/expert-models/features/web/research-async"
]
}
]
},
Expand Down
101 changes: 101 additions & 0 deletions v3/expert-models/features/web/batch-scrape-async.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
---
title: "Batch Web Scraping"
description: "Scrape many URLs in one request and return each page's content. Runs as an async job."
---

import { TechArticleSchema } from "/snippets/TechArticleSchema.mdx";

<TechArticleSchema
title={`Batch Web Scraping`}
description={`Scrape many URLs in one request and return each page's content. Runs as an async job.`}
path="v3/expert-models/features/web/batch-scrape-async"
articleSection="Expert Models"
about={`AI API`}
proficiencyLevel="Intermediate"
keywords={[`Eden AI`, `AI API`, `expert models`]}
datePublished="2026-07-27T00:00:00Z"
dateModified="2026-07-27T00:00:00Z"
/>

## Endpoint

`POST /v3/universal-ai/async` (async)

Model string pattern: `web/batch_scrape_async/{provider}[/{model}]`

## Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| urls | array[string] | Yes | Explicit list of URLs to scrape (async job) |

Check warning on line 30 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L30

Did you really mean 'urls'?


## Output

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| **pages** | array[object] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;url | string | Yes | |
| &nbsp;&nbsp;&nbsp;&nbsp;content | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;title | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;description | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;status_code | int | No | |

Check warning on line 42 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L42

Did you really mean 'status_code'?
| &nbsp;&nbsp;&nbsp;&nbsp;links | array[string] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;**images** | array[object] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url | string | Yes | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width | int | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height | int | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;raw_html | string | No | |

Check warning on line 49 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L49

Did you really mean 'raw_html'?
| &nbsp;&nbsp;&nbsp;&nbsp;summary | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;published_date | string | No | |

Check warning on line 51 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L51

Did you really mean 'published_date'?
| &nbsp;&nbsp;&nbsp;&nbsp;author | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;favicon | string | No | |
| failed_results | array[dict] | No | |

Check warning on line 54 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L54

Did you really mean 'failed_results'?
| usage | dict | No | |


## Available Providers

| Provider | Model String | Price |
|----------|-------------|-------|
| firecrawl | `web/batch_scrape_async/firecrawl` | $0.0038 per token |

Check warning on line 62 in v3/expert-models/features/web/batch-scrape-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/batch-scrape-async.mdx#L62

Did you really mean 'firecrawl'?


## Quick Start


> This is an **async** feature. The initial response returns a job ID. Poll `GET /v3/universal-ai/async/{job_id}` until the job completes.

<CodeGroup>
```python Python
import requests

url = "https://api.edenai.run/v3/universal-ai/async"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}

payload = {
"model": "web/batch_scrape_async/firecrawl",
"input": {
"urls": ["value1", "value2"]
}
}

response = requests.post(url, headers=headers, json=payload)
print(response.json())
```

```bash cURL
curl -X POST https://api.edenai.run/v3/universal-ai/async \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "web/batch_scrape_async/firecrawl",
"input": {"urls": ["value1", "value2"]}
}'
```
</CodeGroup>

104 changes: 104 additions & 0 deletions v3/expert-models/features/web/crawl-async.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
---
title: "Web Crawl"
description: "Crawl a site from a starting URL and return the content of its pages. Runs as an async job."
---

import { TechArticleSchema } from "/snippets/TechArticleSchema.mdx";

<TechArticleSchema
title={`Web Crawl`}
description={`Crawl a site from a starting URL and return the content of its pages. Runs as an async job.`}
path="v3/expert-models/features/web/crawl-async"
articleSection="Expert Models"
about={`AI API`}
proficiencyLevel="Intermediate"
keywords={[`Eden AI`, `AI API`, `expert models`]}
datePublished="2026-07-27T00:00:00Z"
dateModified="2026-07-27T00:00:00Z"
/>

## Endpoint

`POST /v3/universal-ai/async` (async)

Model string pattern: `web/crawl_async/{provider}[/{model}]`

## Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| url | string | Yes | Root URL to crawl (async job) |


## Output

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| **pages** | array[object] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;url | string | Yes | |
| &nbsp;&nbsp;&nbsp;&nbsp;content | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;title | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;description | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;status_code | int | No | |

Check warning on line 42 in v3/expert-models/features/web/crawl-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/crawl-async.mdx#L42

Did you really mean 'status_code'?
| &nbsp;&nbsp;&nbsp;&nbsp;links | array[string] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;**images** | array[object] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url | string | Yes | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width | int | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height | int | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;raw_html | string | No | |

Check warning on line 49 in v3/expert-models/features/web/crawl-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/crawl-async.mdx#L49

Did you really mean 'raw_html'?
| &nbsp;&nbsp;&nbsp;&nbsp;summary | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;published_date | string | No | |

Check warning on line 51 in v3/expert-models/features/web/crawl-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/crawl-async.mdx#L51

Did you really mean 'published_date'?
| &nbsp;&nbsp;&nbsp;&nbsp;author | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;favicon | string | No | |
| status | string | No | |
| total | int | No | |
| completed | int | No | |
| base_url | string | No | |

Check warning on line 57 in v3/expert-models/features/web/crawl-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/crawl-async.mdx#L57

Did you really mean 'base_url'?
| usage | dict | No | |


## Available Providers

| Provider | Model String | Price |
|----------|-------------|-------|
| firecrawl | `web/crawl_async/firecrawl` | $0.0038 per token |

Check warning on line 65 in v3/expert-models/features/web/crawl-async.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/crawl-async.mdx#L65

Did you really mean 'firecrawl'?


## Quick Start


> This is an **async** feature. The initial response returns a job ID. Poll `GET /v3/universal-ai/async/{job_id}` until the job completes.

<CodeGroup>
```python Python
import requests

url = "https://api.edenai.run/v3/universal-ai/async"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}

payload = {
"model": "web/crawl_async/firecrawl",
"input": {
"url": "example"
}
}

response = requests.post(url, headers=headers, json=payload)
print(response.json())
```

```bash cURL
curl -X POST https://api.edenai.run/v3/universal-ai/async \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "web/crawl_async/firecrawl",
"input": {"url": "example"}
}'
```
</CodeGroup>

87 changes: 87 additions & 0 deletions v3/expert-models/features/web/map.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
title: "Site Map"
description: "Discover and return the list of URLs on a site (a sitemap-style link map)."
---

import { TechArticleSchema } from "/snippets/TechArticleSchema.mdx";

<TechArticleSchema
title={`Site Map`}
description={`Discover and return the list of URLs on a site (a sitemap-style link map).`}
path="v3/expert-models/features/web/map"
articleSection="Expert Models"
about={`AI API`}
proficiencyLevel="Intermediate"
keywords={[`Eden AI`, `AI API`, `expert models`]}
datePublished="2026-07-27T00:00:00Z"
dateModified="2026-07-27T00:00:00Z"
/>

## Endpoint

`POST /v3/universal-ai` (sync)

Model string pattern: `web/map/{provider}[/{model}]`

## Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| url | string | Yes | Root URL to map (discover its links) |


## Output

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| url | string | Yes | |
| **links** | array[object] | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;url | string | Yes | |
| &nbsp;&nbsp;&nbsp;&nbsp;title | string | No | |
| &nbsp;&nbsp;&nbsp;&nbsp;description | string | No | |
| base_url | string | No | |

Check warning on line 42 in v3/expert-models/features/web/map.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/map.mdx#L42

Did you really mean 'base_url'?
| usage | dict | No | |


## Available Providers

| Provider | Model String | Price |
|----------|-------------|-------|
| firecrawl | `web/map/firecrawl` | $0.0038 per token |

Check warning on line 50 in v3/expert-models/features/web/map.mdx

View check run for this annotation

Mintlify / Mintlify Validation (edenai) - vale-spellcheck

v3/expert-models/features/web/map.mdx#L50

Did you really mean 'firecrawl'?


## Quick Start


<CodeGroup>
```python Python
import requests

url = "https://api.edenai.run/v3/universal-ai"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}

payload = {
"model": "web/map/firecrawl",
"input": {
"url": "example"
}
}

response = requests.post(url, headers=headers, json=payload)
print(response.json())
```

```bash cURL
curl -X POST https://api.edenai.run/v3/universal-ai \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "web/map/firecrawl",
"input": {"url": "example"}
}'
```
</CodeGroup>

Loading
Loading