Felo APIs
SuperAgent API
কথোপকথন তৈরি করুন, SSE স্ট্রিম ব্যবহার করুন, আরও প্রশ্ন করুন এবং কথোপকথনের মেটাডেটা দেখুন।
/v2/conversationsঅথেন্টিকেশন
Bearer API key
কনটেন্ট টাইপ
application/json and text/event-stream
রেট সংক্রান্ত নোট
Connect to stream immediately. Use offset for reconnects.
SuperAgent API রিয়েল-টাইম স্ট্রিমিং আউটপুট ও LiveDoc ইন্টিগ্রেশনসহ AI-চালিত কথোপকথনের সক্ষমতা দেয়। সাধারণ ওয়ার্কফ্লো:
- একটি কথোপকথন তৈরি করুন -
stream_key,thread_short_idওlive_doc_short_idনিন - SSE স্ট্রিম ব্যবহার করুন -
stream_keyব্যবহার করে স্ট্রিম endpoint-এ সংযোগ করুন - ফলো-আপ করুন - একই কথোপকথনে ফলো-আপ প্রশ্ন করুন, নতুন
stream_keyনিন - কথোপকথনের বিস্তারিত query করুন - কথোপকথনের মেটাডেটা আনতে
thread_short_idব্যবহার করুন - LiveDoc পরিচালনা করুন - সম্পূর্ণ CRUD ও রিসোর্স ব্যবস্থাপনার জন্য LiveDoc API দেখুন
প্রমাণীকরণ
সব অনুরোধের Authorization header-এ একটি API Key প্রয়োজন:
Authorization: Bearer YOUR_API_KEYAI এজেন্টের সাথে ব্যবহার
একটি Agent-কে SuperAgent ওয়ার্কফ্লো এবং অন্যান্য সব উপলব্ধ Felo Skill দিতে সম্পূর্ণ felo-ai প্যাকেজ ইনস্টল করুন। ইনস্টলার গতিশীলভাবে SKILL.md থাকা প্রতিটি প্যাকেজ ডিরেক্টরি আবিষ্কার করে, ভবিষ্যতের প্যাকেজ সংযোজনসহ। আবিষ্কৃত সব Skill Codex ~/.codex/skills, Claude Code ~/.claude/skills, OpenClaw ~/.agents/skills বা Hermes Agent ~/.hermes/skills-এ ইনস্টল করুন। ম্যানুয়াল AI Agent সেটআপ গাইড নিরাপদ ইনস্টলেশন প্রক্রিয়া ও প্রতি-প্ল্যাটফর্ম কনফিগারেশন ব্যাখ্যা করে।
1. কথোপকথন তৈরি করুন
Endpoint
POST https://openapi.felo.ai/v2/conversationsঅনুরোধ Header
| Header | আবশ্যক | বর্ণনা |
|---|---|---|
Authorization | হ্যাঁ | Bearer YOUR_API_KEY |
Content-Type | হ্যাঁ | application/json |
অনুরোধ বডি
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
query | string | হ্যাঁ | ব্যবহারকারীর query, 1-2000 অক্ষর |
live_doc_short_id | string | না | বিদ্যমান LiveDoc পুনরায় ব্যবহার করুন; নতুন তৈরি করতে বাদ দিন |
selected_resource_ids | array of strings | না | context-এ অন্তর্ভুক্ত করার রিসোর্স ID |
skill_id | string | না | এই কথোপকথনে ব্যবহারের জন্য Skill ID |
accept_language | string | না | ভাষার পছন্দ, যেমন en |
device_id | string | না | ডিভাইস শনাক্তকারী |
extra | object | না | SuperAgent-এ pass-through করা অতিরিক্ত প্যারামিটার |
ext | object | না | এক্সটেনশন প্যারামিটার (যেমন style_id, theme) |
উদাহরণ
curl -X POST 'https://openapi.felo.ai/v2/conversations' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query": "What is the latest news about AI?",
"accept_language": "en",
"skill_id": "your-skill-id",
"device_id": "device-001",
"ext": {"style_id": "xxx", "theme": "dark"}
}'সফল রেসপন্স (200)
{
"status": "ok",
"message": null,
"data": {
"stream_key": "sk_abc123xyz",
"thread_short_id": "TvyKouzJirXjFdst4uKRK3",
"live_doc_short_id": "PvyKouzJirXjFdst4uKRK3"
}
}রেসপন্স ফিল্ড
| ফিল্ড | ধরন | বর্ণনা |
|---|---|---|
stream_key | string | SSE স্ট্রিম ব্যবহারের key (বিভাগ 2 দেখুন) |
thread_short_id | string | কথোপকথন ID, কথোপকথনের বিস্তারিত query করতে ব্যবহৃত |
live_doc_short_id | string | সংশ্লিষ্ট LiveDoc ID |
2. SSE স্ট্রিম ব্যবহার করুন
কথোপকথন তৈরি করার পর রিয়েল-টাইম আউটপুট পেতে stream_key ব্যবহার করে স্ট্রিম endpoint-এ সংযোগ করুন।
Endpoint
GET https://openapi.felo.ai/v2/conversations/stream/{stream_key}Query প্যারামিটার
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
offset | integer | না | এই অবস্থান থেকে স্ট্রিমিং পুনরায় শুরু করুন। সংযোগ বিচ্ছিন্ন হওয়ার পর পুনঃসংযোগের জন্য ব্যবহার করুন। |
উদাহরণ
curl -N 'https://openapi.felo.ai/v2/conversations/stream/sk_abc123xyz' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Accept: text/event-stream'offset দিয়ে পুনঃসংযোগ:
curl -N 'https://openapi.felo.ai/v2/conversations/stream/sk_abc123xyz?offset=42' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Accept: text/event-stream'রেসপন্স
রেসপন্স হলো Content-Type: text/event-stream সহ একটি স্ট্যান্ডার্ড Server-Sent Events (SSE) স্ট্রিম।
প্রতিটি ইভেন্ট SSE ফরম্যাট অনুসরণ করে:
event: <event_type>
data: <json_payload>
উদাহরণ ইভেন্ট:
event: message
data: {"content": "The latest AI news includes..."}
event: done
data: {}
আপস্ট্রিম ত্রুটির সময়:
event: error
data: {"message": "upstream error: 502"}
নোট
- কথোপকথন তৈরির পর সাথে সাথে সংযোগ করুন -
stream_key-এর সীমিত বৈধতার সময়সীমা আছে। - SSE-সক্ষম ক্লায়েন্ট ব্যবহার করুন (যেমন ব্রাউজারে
EventSource, বা টার্মিনালেcurl -N)। doneইভেন্ট পাওয়া গেলে বা সার্ভার সংযোগ বন্ধ করলে স্ট্রিম শেষ হয়।
3. কথোপকথনে ফলো-আপ করুন
একটি বিদ্যমান কথোপকথনে ফলো-আপ প্রশ্ন করুন। রেসপন্স স্ট্রিম ব্যবহারের জন্য নতুন stream_key ফেরত দেয়।
Endpoint
POST https://openapi.felo.ai/v2/conversations/{thread_short_id}/follow_upঅনুরোধ Header
| Header | আবশ্যক | বর্ণনা |
|---|---|---|
Authorization | হ্যাঁ | Bearer YOUR_API_KEY |
Content-Type | হ্যাঁ | application/json |
অনুরোধ বডি
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
query | string | হ্যাঁ | ফলো-আপ প্রশ্ন, 1-2000 অক্ষর |
উদাহরণ
curl -X POST 'https://openapi.felo.ai/v2/conversations/TvyKouzJirXjFdst4uKRK3/follow_up' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query": "Can you elaborate on that?"
}'সফল রেসপন্স (200)
{
"status": "ok",
"message": null,
"data": {
"stream_key": "sk_def456uvw",
"thread_short_id": "TvyKouzJirXjFdst4uKRK3",
"live_doc_short_id": "PvyKouzJirXjFdst4uKRK3"
}
}রেসপন্স ফিল্ড
| ফিল্ড | ধরন | বর্ণনা |
|---|---|---|
stream_key | string | এই ফলো-আপের SSE স্ট্রিম ব্যবহারের key |
thread_short_id | string | অনুরোধের মতো একই কথোপকথন ID |
live_doc_short_id | string | সংশ্লিষ্ট LiveDoc ID |
4. কথোপকথনের বিস্তারিত query করুন
Endpoint
GET https://openapi.felo.ai/v2/conversations/{thread_short_id}উদাহরণ
curl 'https://openapi.felo.ai/v2/conversations/TvyKouzJirXjFdst4uKRK3' \
-H 'Authorization: Bearer YOUR_API_KEY'সফল রেসপন্স (200)
{
"status": "ok",
"message": null,
"data": {
"thread_short_id": "TvyKouzJirXjFdst4uKRK3",
"title": "What is the latest news about AI?",
"created_at": "2026-03-09T10:00:00Z",
"updated_at": "2026-03-09T10:00:30Z",
"live_doc_short_id": "PvyKouzJirXjFdst4uKRK3"
}
}রেসপন্স ফিল্ড
| ফিল্ড | ধরন | বর্ণনা |
|---|---|---|
thread_short_id | string | কথোপকথন ID |
title | string | কথোপকথনের শিরোনাম (query থেকে উদ্ভূত) |
created_at | string | তৈরির টাইমস্ট্যাম্প (ISO 8601) |
updated_at | string | সর্বশেষ হালনাগাদের টাইমস্ট্যাম্প (ISO 8601) |
live_doc_short_id | string | সংশ্লিষ্ট LiveDoc ID |
ত্রুটি কোড
| কোড | HTTP স্ট্যাটাস | বর্ণনা |
|---|---|---|
UNAUTHORIZED | 401 | API Key অবৈধ বা প্রত্যাহৃত |
SUPER_AGENT_CONVERSATION_CREATE_FAILED | 502 | কথোপকথন তৈরি করতে ব্যর্থ (ডাউনস্ট্রিম ত্রুটি) |
SUPER_AGENT_CONVERSATION_FOLLOW_UP_FAILED | 502 | কথোপকথনে ফলো-আপ করতে ব্যর্থ (ডাউনস্ট্রিম ত্রুটি) |
SUPER_AGENT_CONVERSATION_QUERY_FAILED | 502 | কথোপকথনের বিস্তারিত query করতে ব্যর্থ (ডাউনস্ট্রিম ত্রুটি) |
সাধারণ ইন্টিগ্রেশন ফ্লো
1. POST /v2/conversations → get stream_key + thread_short_id + live_doc_short_id
2. GET /v2/conversations/stream/{stream_key} → consume SSE until "done"
3. POST /v2/conversations/{thread_short_id}/follow_up → ask follow-up, get new stream_key
4. GET /v2/conversations/stream/{new_stream_key} → consume follow-up SSE until "done"
5. GET /v2/conversations/{thread_short_id} → fetch conversation metadataLiveDoc ব্যবস্থাপনা (CRUD, রিসোর্স আপলোড, URL ইমপোর্ট, রিট্রিভাল)-এর জন্য LiveDoc API দেখুন।