Felo APIs
Web Fetch API
Extrahieren Sie Webseiteninhalte als HTML, Text oder Markdown mit selector- und readability-Optionen.
/v2/web/extractAuthentifizierung
Bearer API key
Inhaltstyp
application/json
Hinweise zu Limits
Es können endpoint-spezifische Limits gelten.
Die Web Fetch API extrahiert Inhalte aus einer Ziel-URL und gibt das Ergebnis in einem Format zurück, das Agenten, RAG-Systeme und Content-Workflows leichter verarbeiten können. Sie kann HTML, reinen Text oder Markdown zurückgeben und unterstützt Selektoren, Readability-Optionen, Cache-Steuerung, benutzerdefinierte User-Agents und Anfrage-Cookies.
Endpoint
POST https://openapi.felo.ai/v2/web/extractAuthentifizierung
Senden Sie Ihren API-Schlüssel im Authorization-Header:
Authorization: Bearer YOUR_API_KEYDetails zum Erstellen und Verwalten von API-Schlüsseln finden Sie im Authentifizierungsleitfaden.
Verwendung mit KI-Agenten
Installieren Sie das vollständige Paket felo-ai, wenn ein Agent Webseiten zusammen mit jedem anderen verfügbaren Felo-Skill extrahieren soll. Der Installer ermittelt dynamisch jedes Paketverzeichnis mit SKILL.md und verlässt sich daher nie auf eine feste Liste. Installieren Sie alle gefundenen Skills in Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills oder Hermes Agent ~/.hermes/skills. Verwenden Sie die manuelle Einrichtungsanleitung für KI-Agenten für die sichere Installation und die Schritte zum API-Schlüssel auf jeder Plattform.
Anfrage
Header
| Header | Erforderlich | Beschreibung |
|---|---|---|
Authorization | Ja | Ihr API-Schlüssel im Format Bearer YOUR_API_KEY |
Content-Type | Ja | Muss application/json sein |
Textkörper-Parameter
| Parameter | Typ | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
url | string | Ja | - | Die URL der zu extrahierenden Webseite. |
crawl_mode | string | Nein | fast | Extraktionsmodus. Verwenden Sie fast für einen schnelleren Abruf oder fine für einen präziseren Crawl, der umfangreichere Seiten verarbeiten kann. |
output_format | string | Nein | html | Ausgabeformat. Unterstützte Werte: html, text, markdown. |
with_readability | boolean or string | Nein | - | Aktiviert die Readability-Verarbeitung, um sich auf den Hauptinhalt zu konzentrieren und Seitenrauschen zu reduzieren. |
with_links_summary | boolean | Nein | - | Schließt eine Zusammenfassung der Links ein, wenn der nachgelagerte Extraktor dies unterstützt. |
with_images_summary | boolean | Nein | - | Schließt eine Zusammenfassung der Bilder ein, wenn unterstützt. |
with_images_readability | boolean | Nein | - | Wendet die Readability-Verarbeitung auf die Bildextraktion an, wenn unterstützt. |
with_images | boolean | Nein | - | Schließt Bildinformationen in das extrahierte Ergebnis ein. |
with_links | boolean | Nein | - | Schließt Linkinformationen in das extrahierte Ergebnis ein. |
ignore_empty_text_image | boolean | Nein | - | Ignoriert Bilder ohne nützlichen Text, wenn unterstützt. |
target_selector | string | Nein | - | CSS-Selektor für das zu extrahierende Zielelement, zum Beispiel article.main-content. |
wait_for_selector | string | Nein | - | Wartet vor der Extraktion, bis ein CSS-Selektor erscheint. Nützlich für dynamisch gerenderte Seiten. |
set_cookies | array | Nein | - | Cookies, die mit der Extraktionsanfrage gesendet werden. |
user_agent | string | Nein | - | Benutzerdefinierte User-Agent-Zeichenfolge für die Extraktionsanfrage. |
timeout | integer | Nein | - | Zeitlimit der Anfrage in Millisekunden. |
with_cache | boolean | Nein | true | Ob der nachgelagerte Extraktor den Cache verwenden darf. |
with_stypes | boolean | Nein | false | Schließt Metadaten zum Stiltyp ein, wenn unterstützt. |
Antwort
Erfolgreiche Antwort
Die Antwort verwendet ein transparentes Durchreich-Design. Die genauen Felder in data können je nach output_format und anderen Extraktionsoptionen variieren.
{
"status": "ok",
"message": null,
"data": {
"content": "# Example Article\n\nExtracted article content..."
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
status | string | Antwortstatus. Bei einer erfolgreichen Anfrage normalerweise ok. |
message | string oder null | Zusätzliche Meldung. Bei erfolgreichen Anfragen normalerweise null. |
data | object | Extrahierter Inhalt und Metadaten, die vom nachgelagerten Extraktionsdienst zurückgegeben werden. |
data.content | string oder object | Extrahierter Inhalt. Die Form hängt von output_format und den gewählten Optionen ab. |
Fehlerantworten
| HTTP-Status | Fehlercode | Beschreibung | Empfohlene Maßnahme |
|---|---|---|---|
| 400 | WEB_EXTRACT_FAILED | Die Anfragevalidierung ist fehlgeschlagen, die URL ist ungültig oder der nachgelagerte Extraktor hat einen clientseitigen Fehler zurückgegeben. | Prüfen Sie url, Selektoren und Anfrageparameter. |
| 401 | UNAUTHORIZED | Der API-Schlüssel fehlt, ist ungültig oder widerrufen. | Prüfen Sie Ihren API-Schlüssel und den Authorization-Header. |
| 500 | WEB_EXTRACT_FAILED | Interner Dienstfehler. | Wiederholen Sie die Anfrage. Kontaktieren Sie den Support, wenn das Problem bleibt. |
Beispiele
Einfache Extraktion
curl -X POST https://openapi.felo.ai/v2/web/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com"
}'Markdown mit Readability extrahieren
curl -X POST https://openapi.felo.ai/v2/web/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/article",
"output_format": "markdown",
"with_readability": true
}'Einen bestimmten CSS-Selektor extrahieren
curl -X POST https://openapi.felo.ai/v2/web/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/article",
"target_selector": "article.main-content",
"output_format": "text"
}'Auf dynamische Inhalte warten
curl -X POST https://openapi.felo.ai/v2/web/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/app",
"crawl_mode": "fine",
"wait_for_selector": "#loaded-content",
"output_format": "markdown",
"timeout": 30000
}'Anwendungsfälle
- Einem Agenten Webseitenkontext geben, bevor er eine Frage beantwortet.
- Artikeltext für die RAG-Aufnahme oder die Erstellung einer Wissensdatenbank extrahieren.
- Webseiten für Archivierungs- oder Dokumentations-Workflows in Markdown umwandeln.
- Fokussierte Inhalte über CSS-Selektoren aus einer Seite ziehen.
- Seitenrauschen mit Readability-Verarbeitung reduzieren, bevor eine nachgelagerte KI-Analyse erfolgt.
Hinweise
- Die API verarbeitet eine URL pro Anfrage.
datawird vom nachgelagerten Extraktionsdienst durchgereicht, sodass im Laufe der Zeit zusätzliche Felder erscheinen können.- Der Modus
finekann langsamer alsfastsein, ist aber nützlich, wenn die Seite ein umfangreicheres Rendering benötigt. - Einige Seiten blockieren die Extraktion, erfordern Cookies oder benötigen einen benutzerdefinierten
user_agent.