Felo API PlatformFelo API Platform

Felo APIs

Web Fetch API

Витягуйте вміст вебсторінок як HTML, текст або Markdown із параметрами селектора й readability.

POST/v2/web/extract

Автентифікація

Bearer API key

Тип вмісту

application/json

Примітки щодо обмежень

Можуть діяти обмеження для окремих endpoint.

Web Fetch API видобуває вміст із цільової URL-адреси та повертає результат у форматі, зручнішому для обробки агентами, системами RAG і робочими процесами з контентом. Він може повертати HTML, звичайний текст або Markdown і підтримує селектори, параметри readability, керування кешем, власні user agent і файли cookie запиту.

Endpoint

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

Автентифікація

Надішліть свій API-ключ у заголовку Authorization:

Authorization: Bearer YOUR_API_KEY

Про створення та керування API-ключами див. посібник з автентифікації.

Використання з агентами ШІ

Установіть повний пакет felo-ai, якщо хочете, щоб агент видобував вміст вебсторінок разом з усіма іншими доступними Felo Skills. Інсталятор динамічно знаходить кожен каталог пакета, що містить SKILL.md, тому ніколи не покладається на фіксований список. Установіть усі знайдені Skills у Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills або Hermes Agent ~/.hermes/skills. Використовуйте посібник з ручного налаштування агента ШІ, щоб дізнатися про безпечне встановлення та кроки з API-ключем для кожної платформи.

Запит

Заголовки

ЗаголовокОбов'язковийОпис
AuthorizationТакВаш API-ключ у форматі Bearer YOUR_API_KEY
Content-TypeТакМає бути application/json

Параметри тіла

ПараметрТипОбов'язковийЗа замовчуваннямОпис
urlstringТак-URL-адреса вебсторінки для видобування.
crawl_modestringНіfastРежим видобування. Використовуйте fast для швидшого отримання або fine для точнішого обходу, який може обробляти насиченіші сторінки.
output_formatstringНіhtmlФормат виводу. Підтримувані значення: html, text, markdown.
with_readabilityboolean or stringНі-Увімкнути обробку readability, щоб зосередитися на основному вмісті та зменшити шум сторінки.
with_links_summarybooleanНі-Додати стислий огляд посилань, якщо це підтримує екстрактор нижчого рівня.
with_images_summarybooleanНі-Додати стислий огляд зображень, якщо це підтримується.
with_images_readabilitybooleanНі-Застосувати обробку readability до видобування зображень, якщо це підтримується.
with_imagesbooleanНі-Додати інформацію про зображення до видобутого результату.
with_linksbooleanНі-Додати інформацію про посилання до видобутого результату.
ignore_empty_text_imagebooleanНі-Ігнорувати зображення без корисного тексту, якщо це підтримується.
target_selectorstringНі-CSS-селектор цільового елемента для видобування, наприклад article.main-content.
wait_for_selectorstringНі-Чекати, доки з'явиться CSS-селектор, перш ніж видобувати. Корисно для сторінок із динамічним рендерингом.
set_cookiesarrayНі-Файли cookie для надсилання разом із запитом видобування.
user_agentstringНі-Власний рядок User-Agent для запиту видобування.
timeoutintegerНі-Час очікування запиту в мілісекундах.
with_cachebooleanНіtrueЧи може екстрактор нижчого рівня використовувати кеш.
with_stypesbooleanНіfalseДодати метадані типів стилів, якщо це підтримується.

Відповідь

Успішна відповідь

Відповідь має прозорий наскрізний дизайн. Точні поля в data можуть відрізнятися залежно від output_format та інших параметрів видобування.

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

Поля відповіді

ПолеТипОпис
statusstringСтатус відповіді. Зазвичай ok для успішного запиту.
messagestring or nullДодаткове повідомлення. Зазвичай null для успішних запитів.
dataobjectВидобутий вміст і метадані, повернуті сервісом видобування нижчого рівня.
data.contentstring or objectВидобутий вміст. Форма залежить від output_format і вибраних параметрів.

Відповіді з помилками

Статус HTTPКод помилкиОписРекомендована дія
400WEB_EXTRACT_FAILEDНе вдалося перевірити запит, URL-адреса недійсна або екстрактор нижчого рівня повернув помилку на боці клієнта.Перевірте url, селектори та параметри запиту.
401UNAUTHORIZEDAPI-ключ відсутній, недійсний або відкликаний.Перевірте свій API-ключ і заголовок авторизації.
500WEB_EXTRACT_FAILEDВнутрішня помилка сервісу.Повторіть запит. Якщо проблема не зникає, зверніться до підтримки.

Приклади

Базове видобування

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

Видобування конкретного CSS-селектора

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

Очікування динамічного вмісту

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

Варіанти використання

  • Надати агенту контекст вебсторінки перед відповіддю на запитання.
  • Видобути текст статті для наповнення RAG або створення бази знань.
  • Перетворити вебсторінки на Markdown для архівування або робочих процесів документації.
  • Отримати цільовий вміст зі сторінки за допомогою CSS-селекторів.
  • Зменшити шум сторінки за допомогою обробки readability перед подальшим аналізом ШІ.

Примітки

  • API обробляє одну URL-адресу за запит.
  • data передається наскрізно від сервісу видобування нижчого рівня, тому з часом можуть з'являтися додаткові поля.
  • Режим fine може бути повільнішим за fast, але буває корисним, коли сторінка потребує складнішого рендерингу.
  • Деякі сторінки можуть блокувати видобування, вимагати файлів cookie або потребувати власного user_agent.