Skip to content

docs(web): add Web feature to the Expert Models reference - #83

Merged
Qchmqs merged 2 commits into
mainfrom
achmassmati/web-feature-docs
Jul 27, 2026
Merged

docs(web): add Web feature to the Expert Models reference#83
Qchmqs merged 2 commits into
mainfrom
achmassmati/web-feature-docs

Conversation

@Qchmqs

@Qchmqs Qchmqs commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

What

Adds the web (Firecrawl / Linkup) tools feature to the V3 Expert Models reference:

  • 7 subfeature pages under v3/expert-models/features/web/ — scraping, map, search, crawl, batch scrape, structured extraction, research — generated from prod /v3/info via scripts/generate_features.py (canonical format: schema tables, provider/pricing, Python + cURL examples).
  • A Web Features nav group in docs.json, inside Expert Models after Video.

Why it wasn't auto-generated

The generator writes the pages but never links them: update_docs_json looks for the Expert Models group nested inside the V3 Documentation group's pages, but Expert Models is now a sibling top-level group, so the nav rewrite is a silent no-op. Fixing the generator's nav traversal is a separate follow-up (kept out of this PR to keep it web-only and reviewable).

Scope / notes

  • Web-only. A full generator run also shows drift on the other feature pages (prod has moved since the last generation) and two unlisted new subfeatures (image/face-recognition, video/deepfake-detection-async); those are out of scope here and part of the same staleness the generator fix would resolve.
  • Web currently lists firecrawl on prod /v3/info; linkup provider rows appear once published on prod, and a later regeneration picks them up automatically.
  • Validated: docs.json parses, all nav paths resolve, all page Python snippets are syntactically valid.

Summary by CodeRabbit

  • Documentation
    • Added a new Web Features section to V3 Expert Models documentation.
    • Documented web scraping, search, site mapping, asynchronous crawling, batch scraping, structured extraction, and deep research.
    • Added endpoint details, inputs and outputs, provider information, pricing, and Python/cURL quick-start examples.
    • Included guidance for submitting and polling asynchronous jobs.

Qchmqs and others added 2 commits July 27, 2026 17:09
Add the web (Firecrawl/Linkup) tools feature to the V3 Expert Models docs:
seven subfeature pages (scraping, map, search, crawl, batch scrape,
structured extraction, research) generated from prod /v3/info via
scripts/generate_features.py, plus a Web Features nav group in docs.json.

Generated but not auto-linked: update_docs_json looks for the Expert Models
group nested inside the V3 Documentation group's pages, but it is now a
sibling top-level group, so the nav rewrite is a silent no-op. Adding web
manually here; the generator nav fix is a separate follow-up.
@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

Added a V3 Expert Models navigation group and seven web feature documentation pages covering synchronous scraping, search, and maps, plus asynchronous crawling, batch scraping, structured extraction, and research.

Changes

Web Features Documentation

Layer / File(s) Summary
Synchronous web feature pages
docs.json, v3/expert-models/features/web/scraping.mdx, v3/expert-models/features/web/map.mdx, v3/expert-models/features/web/search.mdx
Adds the Web Features navigation group and documents synchronous scraping, site map, and search endpoints with schemas, providers, and Python/cURL examples.
Asynchronous crawl and batch scraping pages
v3/expert-models/features/web/crawl-async.mdx, v3/expert-models/features/web/batch-scrape-async.mdx
Documents asynchronous crawling and batch scraping contracts, job polling, outputs, providers, and request examples.
Asynchronous extraction and research pages
v3/expert-models/features/web/structured-extraction-async.mdx, v3/expert-models/features/web/research-async.mdx
Documents asynchronous structured extraction and deep research inputs, outputs, providers, polling, and request examples.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • edenai/docs#81: Touches the same Web Features navigation and web MDX documentation pages.

Poem

A rabbit hops through docs so bright,
With web maps glowing day and night.
Scrape and search, then crawl away,
Async jobs return when ready to play.
Seven new pages, carrots in sight!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding Web feature documentation to the Expert Models reference.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch achmassmati/web-feature-docs

Comment @coderabbitai help to get the list of available commands.

@mintlify

mintlify Bot commented Jul 27, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
edenai 🟢 Ready View Preview Jul 27, 2026, 4:11 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@v3/expert-models/features/web/scraping.mdx`:
- Around line 70-94: Replace every YOUR_API_KEY placeholder with api_token in
both Python and cURL production-call examples:
v3/expert-models/features/web/scraping.mdx lines 70-94,
v3/expert-models/features/web/map.mdx lines 60-84,
v3/expert-models/features/web/search.mdx lines 81-105,
v3/expert-models/features/web/crawl-async.mdx lines 77-101,
v3/expert-models/features/web/batch-scrape-async.mdx lines 74-98,
v3/expert-models/features/web/structured-extraction-async.mdx lines 69-93, and
v3/expert-models/features/web/research-async.mdx lines 70-94; make no other
changes.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 3b0f4db2-45e2-447d-b43b-529d65e5fa0a

📥 Commits

Reviewing files that changed from the base of the PR and between edda562 and e8b9080.

📒 Files selected for processing (8)
  • docs.json
  • v3/expert-models/features/web/batch-scrape-async.mdx
  • v3/expert-models/features/web/crawl-async.mdx
  • v3/expert-models/features/web/map.mdx
  • v3/expert-models/features/web/research-async.mdx
  • v3/expert-models/features/web/scraping.mdx
  • v3/expert-models/features/web/search.mdx
  • v3/expert-models/features/web/structured-extraction-async.mdx

Comment on lines +70 to +94
url = "https://api.edenai.run/v3/universal-ai"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}

payload = {
"model": "web/scraping/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/scraping/firecrawl",
"input": {"url": "example"}
}'

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Use the prescribed production token placeholder in every example.

Replace YOUR_API_KEY with api_token in these production-call examples. This distinguishes production credentials from sandbox_api_token, as required.

  • v3/expert-models/features/web/scraping.mdx#L70-L94: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/map.mdx#L60-L84: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/search.mdx#L81-L105: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/crawl-async.mdx#L77-L101: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/batch-scrape-async.mdx#L74-L98: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/structured-extraction-async.mdx#L69-L93: replace both Python and cURL token placeholders.
  • v3/expert-models/features/web/research-async.mdx#L70-L94: replace both Python and cURL token placeholders.
🧰 Tools
🪛 Betterleaks (1.6.1)

[high] 88-89: Discovered a potential authorization token provided in a curl command header, which could compromise the curl accessed resource.

(curl-auth-header)

📍 Affects 7 files
  • v3/expert-models/features/web/scraping.mdx#L70-L94 (this comment)
  • v3/expert-models/features/web/map.mdx#L60-L84
  • v3/expert-models/features/web/search.mdx#L81-L105
  • v3/expert-models/features/web/crawl-async.mdx#L77-L101
  • v3/expert-models/features/web/batch-scrape-async.mdx#L74-L98
  • v3/expert-models/features/web/structured-extraction-async.mdx#L69-L93
  • v3/expert-models/features/web/research-async.mdx#L70-L94
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@v3/expert-models/features/web/scraping.mdx` around lines 70 - 94, Replace
every YOUR_API_KEY placeholder with api_token in both Python and cURL
production-call examples: v3/expert-models/features/web/scraping.mdx lines
70-94, v3/expert-models/features/web/map.mdx lines 60-84,
v3/expert-models/features/web/search.mdx lines 81-105,
v3/expert-models/features/web/crawl-async.mdx lines 77-101,
v3/expert-models/features/web/batch-scrape-async.mdx lines 74-98,
v3/expert-models/features/web/structured-extraction-async.mdx lines 69-93, and
v3/expert-models/features/web/research-async.mdx lines 70-94; make no other
changes.

Source: Coding guidelines

@Qchmqs
Qchmqs merged commit 8841266 into main Jul 27, 2026
5 of 6 checks passed
@mintlify

mintlify Bot commented Jul 27, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated (UTC)
edenai 🟡 Building Jul 27, 2026, 4:09 PM

💡 Tip: Enable Workflows to automatically generate PRs for you.

FahimaGold added a commit that referenced this pull request Jul 27, 2026
Regenerated from current main with the generator fixes in #80. Rebuilt on top of
main (which now carries the hand-committed web pages from #83) rather than
rebased, so there are no conflict artifacts and the diff is exactly what the
pipeline produces from today's API.

Pricing (provider rows 195 -> 225):
- 16 corrected prices, incl. image/generation/openai $0.08 -> $0.034,
  ocr/financial_parser/veryfi $0.08 -> $0.16, video bytedance
  $1.8/1M tokens -> $0.05/second, NER openai $40/1M chars -> $10/1M tokens
- 33 new provider rows (Google Imagen, gpt-image-*, sora-2-pro, pixverse)
- 3 rows dropped for retired models (dall-e-2, dall-e-3, seedance-1-0-lite)
- 14 units corrected from "seconde" to "second"

Pages:
- new: image/face-recognition, video/deepfake-detection-async
- features/index.mdx gains the Web section. #83 added the web pages and their
  nav by hand but did not regenerate the index, so the feature index in prod has
  no Web cards at all.
- two broken tables repaired: the tts `voice` row and explicit_content
  `subcategory` row had embedded newlines that ended the table early and spilled
  ~30 lines of prose into the page body.
- image/generation reference_images type escaped as `array[file_input \| object]`

Metadata: web/* and video/* articleSection now match their nav group, with
per-category about/keywords instead of the generic fallback.

Nav: Web Features moves into API order, face-recognition and
deepfake-detection-async added, "Video Generation Features" -> "Video Features".

Quick Start examples for image ai_detection and deepfake_detection now use
resemble, which the API returns first for those subfeatures.

No dateModified edits — update-dates.yml owns those.

Verified: 1,070 table rows across 36 pages, zero malformed.
FahimaGold added a commit that referenced this pull request Jul 27, 2026
Regenerated from current main with the generator fixes in #80.

Pricing (provider rows 195 -> 225):
- 16 corrected prices, incl. image/generation/openai $0.08 -> $0.034,
  ocr/financial_parser/veryfi $0.08 -> $0.16, video bytedance
  $1.8/1M tokens -> $0.05/second, NER openai $40/1M chars -> $10/1M tokens
- 33 new provider rows (Google Imagen, gpt-image-*, sora-2-pro, pixverse)
- 3 rows dropped for retired models (dall-e-2, dall-e-3, seedance-1-0-lite)
- 14 units corrected from "seconde" to "second"

Pages:
- new: image/face-recognition, video/deepfake-detection-async
- features/index.mdx gains the Web section; #83 added the web pages and nav by
  hand without regenerating the index, so prod has no Web cards
- two broken tables repaired: the tts `voice` and explicit_content
  `subcategory` rows had newlines that ended the table early
- image/generation reference_images escaped as `array[file_input \| object]`

Metadata: articleSection is now a JSX template literal on all 36 pages and
matches each page's nav group; web/* and video/* get real about/keywords.

Nav: Web Features moves into API order, the two new pages are added,
"Video Generation Features" -> "Video Features".

Verified: 1,070 table rows, zero malformed, zero date churn.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant