Felo APIs
Web Fetch API
selector ও readability অপশন দিয়ে ওয়েব পেজের কনটেন্ট HTML, text বা Markdown হিসেবে এক্সট্র্যাক্ট করুন।
/v2/web/extractঅথেন্টিকেশন
Bearer API key
কনটেন্ট টাইপ
application/json
রেট সংক্রান্ত নোট
endpoint-ভিত্তিক সীমা প্রযোজ্য হতে পারে।
Web Fetch API একটি লক্ষ্য URL থেকে কনটেন্ট এক্সট্রাক্ট করে এবং এজেন্ট, RAG সিস্টেম ও কনটেন্ট ওয়ার্কফ্লোর প্রসেস করা সহজ এমন ফরম্যাটে ফলাফল ফেরত দেয়। এটি HTML, প্লেইন টেক্সট বা Markdown ফেরত দিতে পারে এবং selector, readability অপশন, cache নিয়ন্ত্রণ, কাস্টম user agent ও অনুরোধ cookie সমর্থন করে।
Endpoint
POST https://openapi.felo.ai/v2/web/extractপ্রমাণীকরণ
Authorization header-এ আপনার API key পাঠান:
Authorization: Bearer YOUR_API_KEYAPI key তৈরি ও পরিচালনার বিস্তারিত জানতে Authentication গাইড দেখুন।
AI এজেন্টের সাথে ব্যবহার
একটি Agent-কে অন্যান্য সব উপলব্ধ Felo Skill-এর পাশাপাশি ওয়েবপেজ এক্সট্রাক্ট করতে দিতে চাইলে সম্পূর্ণ felo-ai প্যাকেজ ইনস্টল করুন। ইনস্টলার গতিশীলভাবে SKILL.md থাকা প্রতিটি প্যাকেজ ডিরেক্টরি আবিষ্কার করে, তাই এটি কখনো নির্দিষ্ট তালিকার উপর নির্ভর করে না। আবিষ্কৃত সব Skill Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills বা Hermes Agent ~/.hermes/skills-এ ইনস্টল করুন। প্রতিটি প্ল্যাটফর্মের নিরাপদ ইনস্টলেশন ও API key ধাপের জন্য ম্যানুয়াল AI Agent সেটআপ গাইড ব্যবহার করুন।
অনুরোধ
Header
| Header | আবশ্যক | বর্ণনা |
|---|---|---|
Authorization | হ্যাঁ | Bearer YOUR_API_KEY ফরম্যাটে আপনার API key |
Content-Type | হ্যাঁ | অবশ্যই application/json হতে হবে |
Body প্যারামিটার
| প্যারামিটার | ধরন | আবশ্যক | ডিফল্ট | বর্ণনা |
|---|---|---|---|---|
url | string | হ্যাঁ | - | এক্সট্রাক্ট করার ওয়েবপেজ URL। |
crawl_mode | string | না | fast | এক্সট্রাকশন মোড। দ্রুত fetch-এর জন্য fast বা আরও সমৃদ্ধ পেজ সামলাতে পারে এমন সূক্ষ্ম crawl-এর জন্য fine ব্যবহার করুন। |
output_format | string | না | html | আউটপুট ফরম্যাট। সমর্থিত মান: html, text, markdown। |
with_readability | boolean or string | না | - | মূল কনটেন্টে মনোযোগ দিতে এবং পেজের অপ্রয়োজনীয়তা কমাতে readability প্রসেসিং সক্রিয় করুন। |
with_links_summary | boolean | না | - | ডাউনস্ট্রিম এক্সট্রাক্টর সমর্থন করলে লিংকের সারাংশ অন্তর্ভুক্ত করুন। |
with_images_summary | boolean | না | - | সমর্থিত হলে ইমেজের সারাংশ অন্তর্ভুক্ত করুন। |
with_images_readability | boolean | না | - | সমর্থিত হলে ইমেজ এক্সট্রাকশনে readability হ্যান্ডলিং প্রয়োগ করুন। |
with_images | boolean | না | - | এক্সট্রাক্ট করা ফলাফলে ইমেজ তথ্য অন্তর্ভুক্ত করুন। |
with_links | boolean | না | - | এক্সট্রাক্ট করা ফলাফলে লিংক তথ্য অন্তর্ভুক্ত করুন। |
ignore_empty_text_image | boolean | না | - | সমর্থিত হলে উপযোগী টেক্সট নেই এমন ইমেজ উপেক্ষা করুন। |
target_selector | string | না | - | এক্সট্রাক্ট করার লক্ষ্য এলিমেন্টের CSS selector, যেমন article.main-content। |
wait_for_selector | string | না | - | এক্সট্রাকশনের আগে একটি CSS selector দেখা যাওয়া পর্যন্ত অপেক্ষা করুন। গতিশীলভাবে রেন্ডার হওয়া পেজের জন্য উপযোগী। |
set_cookies | array | না | - | এক্সট্রাকশন অনুরোধের সাথে পাঠানোর cookie। |
user_agent | string | না | - | এক্সট্রাকশন অনুরোধের জন্য কাস্টম User-Agent স্ট্রিং। |
timeout | integer | না | - | মিলিসেকেন্ডে অনুরোধের সময়সীমা। |
with_cache | boolean | না | true | ডাউনস্ট্রিম এক্সট্রাক্টর cache ব্যবহার করতে পারে কি না। |
with_stypes | boolean | না | false | সমর্থিত হলে style-type মেটাডেটা অন্তর্ভুক্ত করুন। |
রেসপন্স
সফল রেসপন্স
রেসপন্স একটি স্বচ্ছ pass-through ডিজাইন ব্যবহার করে। data-এর ভেতরের সঠিক ফিল্ড output_format ও অন্যান্য এক্সট্রাকশন অপশনের ভিত্তিতে ভিন্ন হতে পারে।
{
"status": "ok",
"message": null,
"data": {
"content": "# Example Article\n\nExtracted article content..."
}
}রেসপন্স ফিল্ড
| ফিল্ড | ধরন | বর্ণনা |
|---|---|---|
status | string | রেসপন্স স্ট্যাটাস। সফল অনুরোধে সাধারণত ok। |
message | string or null | অতিরিক্ত message। সফল অনুরোধে সাধারণত null। |
data | object | ডাউনস্ট্রিম এক্সট্রাকশন সার্ভিসের ফেরত দেওয়া এক্সট্রাক্ট করা কনটেন্ট ও মেটাডেটা। |
data.content | string or object | এক্সট্রাক্ট করা কনটেন্ট। এর আকার output_format ও নির্বাচিত অপশনের উপর নির্ভর করে। |
ত্রুটি রেসপন্স
| HTTP স্ট্যাটাস | ত্রুটি কোড | বর্ণনা | প্রস্তাবিত পদক্ষেপ |
|---|---|---|---|
| 400 | WEB_EXTRACT_FAILED | অনুরোধ ভ্যালিডেশন ব্যর্থ, URL অবৈধ, বা ডাউনস্ট্রিম এক্সট্রাক্টর ক্লায়েন্ট-সাইড ত্রুটি ফেরত দিয়েছে। | url, selector ও অনুরোধ প্যারামিটার দেখুন। |
| 401 | UNAUTHORIZED | API key অনুপস্থিত, অবৈধ বা প্রত্যাহৃত। | আপনার API key ও authorization header যাচাই করুন। |
| 500 | WEB_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"
}'Readability সহ Markdown এক্সট্রাক্ট করুন
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 Selector এক্সট্রাক্ট করুন
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
}'ব্যবহারের ক্ষেত্র
- প্রশ্নের উত্তর দেওয়ার আগে একটি এজেন্টকে ওয়েবপেজ context দিন।
- RAG ইনজেশন বা নলেজ বেস তৈরির জন্য নিবন্ধের টেক্সট এক্সট্রাক্ট করুন।
- আর্কাইভিং বা ডকুমেন্টেশন ওয়ার্কফ্লোরের জন্য ওয়েবপেজকে Markdown-এ রূপান্তর করুন।
- CSS selector ব্যবহার করে পেজ থেকে নির্দিষ্ট কনটেন্ট টেনে নিন।
- ডাউনস্ট্রিম AI বিশ্লেষণের আগে readability প্রসেসিং দিয়ে পেজের অপ্রয়োজনীয়তা কমান।
নোট
- API প্রতি অনুরোধে একটি URL সামলায়।
dataডাউনস্ট্রিম এক্সট্রাকশন সার্ভিস থেকে pass-through হয়, তাই সময়ের সাথে অতিরিক্ত ফিল্ড দেখা দিতে পারে।fineমোডfast-এর চেয়ে ধীর হতে পারে, কিন্তু পেজের আরও সমৃদ্ধ রেন্ডারিং আচরণ দরকার হলে উপযোগী হতে পারে।- কিছু পেজ এক্সট্রাকশন ব্লক করতে পারে, cookie প্রয়োজন হতে পারে, বা কাস্টম
user_agentদরকার হতে পারে।