API संदर्भ
GatifyAI OpenAI SDK शी सुसंगत chat completions endpoint उपलब्ध करून देते — तुमचा विद्यमान OpenAI client GatifyAI कडे निर्देशित करा आणि कोणत्याही खास client library शिवाय ते थेट काम करते.
बेस URL
प्रत्येक request येथे जाते:
https://gatifyai.com/api/v1प्रमाणीकरण
API keys पेजवर key तयार करा, मग ती Authorization header मध्ये bearer token म्हणून पाठवा. तुमच्या key चा फक्त hash साठवला जातो — key तयार होताच ती कॉपी करा, कारण GatifyAI ती पुन्हा दाखवू शकत नाही.
झटपट सुरुवात
curl, Python किंवा TypeScript मधील किमान request:
curl https://gatifyai.com/api/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MODEL_NAME",
"messages": [{"role": "user", "content": "Hello!"}]
}'key विशिष्ट models पर्यंत मर्यादित करणे
डीफॉल्टनुसार नवीन key GatifyAI चे कोणतेही मोफत model वापरू शकते, आणि एखादे उपलब्ध नसल्यास web chat प्रमाणेच automatic fallover वापरते. त्याऐवजी तुम्ही key एखाद्या विशिष्ट model किंवा छोट्या list पर्यंत मर्यादित करू शकता — मग request कोणतेही model मागत असली तरी key फक्त त्या list मधील models, तुम्ही दिलेल्या क्रमाने, वापरेल. त्या list बाहेरील model मागितल्यास key ला प्रत्यक्षात वापरता येणारी models सांगणारा 400 error मिळतो.
पर्सोना म्हणून chat करणे
community gallery मध्ये प्रकाशित पर्सोना म्हणून chat करण्यासाठी model: "persona/<slug>" पाठवा — त्याची personality आणि preferred models आपोआप वापरली जातात, तरी तुम्ही key साठी allowed models सेट केले असल्यास त्यांच्यापुरते मर्यादित राहतात. पर्सोनाचा slug आणि तयार example त्याच्या स्वतःच्या page वर, API tab मध्ये मिळेल.
{
"model": "persona/senior-engineer",
"messages": [{"role": "user", "content": "Review my code."}]
}स्ट्रीमिंग वि. नॉन-स्ट्रीमिंग
tokens तयार होताच मिळवण्यासाठी stream: true सेट करा, अगदी OpenAI streaming format प्रमाणे (Server-Sent Events, [DONE] ने समाप्त). पूर्ण reply ची वाट पाहून एक JSON response मिळवण्यासाठी हे वगळा किंवा false सेट करा — हे डीफॉल्ट आहे.
Errors
Errors OpenAI error shape पाळतात: {"error": {"message": "...", "type": "..."}}. 401 म्हणजे key missing, invalid किंवा revoked आहे. 400 म्हणजे request स्वतः invalid आहे — बहुतेक वेळा unrecognized model, unpublished/unknown persona slug किंवा तुमच्या key च्या allowed list बाहेरील model. 502 म्हणजे कोणत्याही candidate model ने प्रतिसाद दिला नाही.
{
"error": {
"message": "This API key may only use: llama-3.1-8b:free",
"type": "invalid_request_error"
}
}Rate limits
API requests web app प्रमाणेच त्याच per-account chat rate limit मध्ये मोजल्या जातात — सध्या API traffic साठी वेगळा quota नाही.