Felo API PlatformFelo API Platform

Felo APIs

Web Fetch API

Extraheer webpagina-inhoud als HTML, tekst of Markdown met selector- en readability-opties.

POST/v2/web/extract

Authenticatie

Bearer API key

Inhoudstype

application/json

Toelichting op limieten

Er kunnen limieten gelden die specifiek zijn voor het endpoint.

De Web Fetch API haalt inhoud uit een doel-URL en retourneert het resultaat in een vorm die gemakkelijker te verwerken is voor agents, RAG-systemen en contentworkflows. De API kan HTML, platte tekst of Markdown retourneren en ondersteunt selectors, readability-opties, cachebeheer, aangepaste user agents en verzoekcookies.

Endpoint

POST https://openapi.felo.ai/v2/web/extract

Authenticatie

Stuur je API-sleutel mee in de Authorization-header:

Authorization: Bearer YOUR_API_KEY

Zie de authenticatiehandleiding voor het aanmaken en beheren van API-sleutels.

Gebruik met AI-agents

Installeer het volledige pakket felo-ai als je wilt dat een agent webpagina's extraheert naast alle andere beschikbare Felo Skills. Het installatieprogramma ontdekt dynamisch elke pakketmap die SKILL.md bevat, dus het vertrouwt nooit op een vaste lijst. Installeer alle gevonden Skills in Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills of Hermes Agent ~/.hermes/skills. Gebruik de handleiding voor handmatige AI-agentconfiguratie voor de veilige installatie en de stappen voor de API-sleutel per platform.

Verzoek

Headers

HeaderVerplichtBeschrijving
AuthorizationJaJe API-sleutel in de vorm Bearer YOUR_API_KEY
Content-TypeJaMoet application/json zijn

Bodyparameters

ParameterTypeVerplichtStandaardBeschrijving
urlstringJa-De URL van de webpagina die je wilt extraheren.
crawl_modestringNeefastExtractiemodus. Gebruik fast voor een snellere fetch of fine voor een nauwkeurigere crawl die rijkere pagina's aankan.
output_formatstringNeehtmlUitvoerformaat. Ondersteunde waarden: html, text, markdown.
with_readabilityboolean of stringNee-Schakel readability-verwerking in om je op de hoofdinhoud te richten en ruis op de pagina te verminderen.
with_links_summarybooleanNee-Neem een samenvatting van links op wanneer de downstream-extractor dit ondersteunt.
with_images_summarybooleanNee-Neem een samenvatting van afbeeldingen op wanneer dit wordt ondersteund.
with_images_readabilitybooleanNee-Pas readability-verwerking toe op het extraheren van afbeeldingen wanneer dit wordt ondersteund.
with_imagesbooleanNee-Neem afbeeldingsinformatie op in het geëxtraheerde resultaat.
with_linksbooleanNee-Neem linkinformatie op in het geëxtraheerde resultaat.
ignore_empty_text_imagebooleanNee-Negeer afbeeldingen zonder bruikbare tekst wanneer dit wordt ondersteund.
target_selectorstringNee-CSS-selector voor het doelelement dat je wilt extraheren, zoals article.main-content.
wait_for_selectorstringNee-Wacht tot een CSS-selector verschijnt voordat je extraheert. Handig voor dynamisch gerenderde pagina's.
set_cookiesarrayNee-Cookies die met het extractieverzoek worden meegestuurd.
user_agentstringNee-Aangepaste User-Agent-string voor het extractieverzoek.
timeoutintegerNee-Time-out van het verzoek in milliseconden.
with_cachebooleanNeetrueOf de downstream-extractor de cache mag gebruiken.
with_stypesbooleanNeefalseNeem metagegevens over stijltypen op wanneer dit wordt ondersteund.

Respons

Succesrespons

De respons gebruikt een transparant pass-through-ontwerp. De exacte velden in data kunnen variëren op basis van output_format en andere extractieopties.

{
  "status": "ok",
  "message": null,
  "data": {
    "content": "# Example Article\n\nExtracted article content..."
  }
}

Responsvelden

VeldTypeBeschrijving
statusstringResponsstatus. Meestal ok bij een geslaagd verzoek.
messagestring of nullAanvullend bericht. Meestal null bij geslaagde verzoeken.
dataobjectGeëxtraheerde inhoud en metadata die door de downstream-extractiedienst worden geretourneerd.
data.contentstring of objectGeëxtraheerde inhoud. De vorm hangt af van output_format en de gekozen opties.

Foutresponsen

HTTP-statusFoutcodeBeschrijvingVoorgestelde actie
400WEB_EXTRACT_FAILEDValidatie van het verzoek is mislukt, de URL is ongeldig of de downstream-extractor retourneerde een fout aan de clientkant.Controleer url, de selectors en de verzoekparameters.
401UNAUTHORIZEDAPI-sleutel ontbreekt, is ongeldig of ingetrokken.Controleer je API-sleutel en de autorisatieheader.
500WEB_EXTRACT_FAILEDInterne fout in de dienst.Probeer het verzoek opnieuw. Neem contact op met support als het probleem aanhoudt.

Voorbeelden

Basisextractie

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 extraheren met readability

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
  }'

Een specifieke CSS-selector extraheren

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"
  }'

Wachten op dynamische inhoud

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
  }'

Gebruiksscenario's

  • Geef een agent context van een webpagina voordat hij een vraag beantwoordt.
  • Extraheer artikeltekst voor RAG-opname of het maken van een kennisbank.
  • Zet webpagina's om naar Markdown voor archiverings- of documentatieworkflows.
  • Haal gerichte inhoud uit een pagina met CSS-selectors.
  • Verminder ruis op de pagina met readability-verwerking voordat je de inhoud downstream door AI laat analyseren.

Opmerkingen

  • De API verwerkt één URL per verzoek.
  • data wordt doorgegeven vanuit de downstream-extractiedienst, dus er kunnen na verloop van tijd extra velden verschijnen.
  • De modus fine kan langzamer zijn dan fast, maar is nuttig wanneer de pagina uitgebreider moet worden gerenderd.
  • Sommige pagina's blokkeren extractie, vereisen cookies of hebben een aangepaste user_agent nodig.