API FAQ
सामान्य API प्रश्न — प्रमाणीकरण, रेट लिमिट, त्रुटि प्रबंधन, एंडपॉइंट खोज।
API FAQ
Synapse API के बारे में सामान्य प्रश्न।
मैं प्रमाणित कैसे करूँ?
दो विधियाँ:
- Mind Key (डेटा एंडपॉइंट्स के लिए):
Authorization: Bearer mk_... - JWT (खाता एंडपॉइंट्स के लिए):
Authorization: Bearer eyJ...
या क्वेरी पैरामीटर के माध्यम से (60 req/min सीमा): ?key=mk_...
प्रमाणीकरण देखें।
Mind Key और JWT में क्या अंतर है?
- Mind Key: टैनेंट-स्कोप्ड, कभी समाप्त नहीं होता, memory/chat/tasks डेटा के लिए
- JWT: उपयोगकर्ता-स्कोप्ड, 7-दिन समाप्ति, खाता/mind प्रबंधन के लिए
Mind Key vs JWT देखें।
मुझे 401 Unauthorized क्यों मिल रहा है?
सामान्य कारण:
Authorizationहेडर गायब- अमान्य Mind Key (सत्यापित करें कि यह
mk_से शुरू होता है) - Mind Key आवश्यक होने पर JWT का उपयोग (या इसके विपरीत)
- Mind Key रद्द कर दी गई
समाधान: अपने टोकन को सत्यापित करें। प्रमाणीकरण देखें।
मुझे 404 Not Found क्यों मिल रहा है?
आपने गलत एंडपॉइंट पाथ का उपयोग किया। Synapse में केवल GET /endpoints में सूचीबद्ध पाथ हैं।
समाधान: सभी वैध पाथ देखने के लिए GET /endpoints कॉल करें। अनुमान न लगाएँ।
मुझे 429 Too Many Requests क्यों मिल रहा है?
आप ?key= क्वेरी पैरामीटर प्रमाणीकरण का उपयोग कर रहे हैं, जो 60/min तक सीमित है।
समाधान: Authorization: Bearer हेडर पर स्विच करें (कोई रेट लिमिट नहीं)।
रेट लिमिट देखें।
मैं सभी एंडपॉइंट्स की सूची कैसे बनाऊँ?
curl https://synapse.schaefer.zone/endpoints
curl https://synapse.schaefer.zone/endpoints?format=textमुझे सही एंडपॉइंट कैसे मिले?
- मशीन-पठनीय सूची के लिए
GET /endpointsजाँचें - पूर्ण API दस्तावेज़ के लिए
GET /helpजाँचें - दस्तावेज़ीकरण सिस्टम के लिए
GET /docsब्राउज़ करें - OpenAPI 3.0 विशेषता के लिए
GET /openapi.jsonका उपयोग करें
क्या मैं POST के बजाय GET का उपयोग कर सकता हूँ?
कुछ POST एंडपॉइंट्स में URL-केवल टूल्स के लिए GET समकक्ष हैं:
POST /memory↔GET /memory/store?content=...POST /mind/task↔GET /mind/task?title=...POST /chat/reply↔GET /chat/reply?content=...
उपलब्ध GET वेरिएंट्स के लिए GET /endpoints जाँचें।
मैं त्रुटियों को कैसे संभालूँ?
सभी त्रुटियाँ JSON लौटाती हैं:
{
"statusCode": 401,
"error": "Unauthorized",
"message": "Mind Key fehlt oder ungültig.",
"docs": "https://synapse.schaefer.zone/docs/getting-started/authentication"
}त्रुटियाँ और त्रुटि प्रबंधन देखें।
अनुरोध बॉडी सीमा क्या है?
10 MB। बड़े payloads (जैसे फ़ाइल अपलोड) के लिए, multipart एंडपॉइंट्स का उपयोग करें।
क्या API CORS का समर्थन करता है?
हाँ। सभी एंडपॉइंट्स लौटाते हैं:
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type, X-Synapse-JWTक्या कोई SDK है?
हाँ:
- Node.js:
npm install synapse-memory-sdk - MCP:
npx -y synapse-mcp-api@latest
विवरण के लिए API Overview देखें।
मैं पेजिनेशन कैसे करूँ?
?limit= और ?offset= का उपयोग करें:
curl ".../memory?limit=50&offset=100"डिफ़ॉल्ट सीमा: 100। अधिकतम: 500।
क्या मैं मेमोरीज़ को श्रेणी या टैग से फ़िल्टर कर सकता हूँ?
हाँ:
curl ".../memory?category=project"
curl ".../memory?tag=docker"
curl ".../memory/by-tag?tag=production"मैं मेमोरीज़ कैसे खोजूँ?
दो तरीके:
- FTS5 कीवर्ड खोज:
GET /memory/search?q=docker+swarm - सिमेंटिक खोज:
GET /memory/semantic-search?q=container+orchestration
FTS5 Search और सिमेंटिक खोज देखें।
मैं मेमोरी कैसे अपडेट करूँ?
समान category + key के साथ POST /memory — मौजूदा मेमोरी अपडेट होती है, डुप्लिकेट नहीं होती।
# Initial store
curl -X POST .../memory -d '{"category":"fact","key":"user_name","content":"Michael"}'
# Update (same key)
curl -X POST .../memory -d '{"category":"fact","key":"user_name","content":"Michael Schäfer"}'मैं मेमोरी कैसे हटाऊँ?
curl -X DELETE -H "Authorization: Bearer $KEY" \
https://synapse.schaefer.zone/memory/mem_001क्या मैं बल्क हटा सकता हूँ?
हाँ:
curl -X POST .../memory/bulk-delete \
-d '{"ids": ["mem_001", "mem_002", "mem_003"]}'