APIʼni tez boshlash
Eng kam ruxsatli kalit yarating, autentifikatsiyani tekshiring, saytlarni oling va birinchi xatoni qayta ishlang.
Eng kam ruxsatli kalit yarating, autentifikatsiyani tekshiring, saytlarni oling va birinchi xatoni qayta ishlang.
Bu tezkor qo‘llanma backend hisobingiz nomidan autentifikatsiya qilishi va maʼlumot o‘qishini tekshiradi. Sizga faol pullik tarif, curl o‘rnatilgan terminal va Boshqaruv paneli → Sozlamalar → Dasturchi bo‘limiga kirish kerak.
1. Eng kam ruxsatli kalit yarating#
Local API quickstart nomli kalit yarating, account:read va sites:read ruxsatlarini belgilang va qisqa amal muddatini tanlang. Ochiq matndagi kalitni darhol nusxalang; u boshqa ko‘rsatilmaydi.
OpenAI, Anthropic, Gemini, Deepgram yoki ElevenLabs provayder kalitidan foydalanmang. Ochiq API maf_live_ bilan boshlanadigan Make Agent Fast kalitini talab qiladi.
2. Joriy terminal uchun saqlang#
export MAF_API_KEY="maf_live_..."Sirni ekranga chiqarmasdan o‘zgaruvchi mavjudligini tekshiring:
test -n "$MAF_API_KEY" && echo "MAF_API_KEY is set"Kalitni .env, shell tarixidagi misollar, test fixtureʼlari yoki brauzer paketiga kiritmang. Joylashtirilgan kod uchun hostingning sirlar boshqaruvchisidan foydalaning.
3. Hisob maʼlumotini ko‘ring#
curl --fail-with-body --include https://makeagent.fast/api/v1/me \
-H "Authorization: Bearer $MAF_API_KEY" \
-H "Accept: application/json"Kutilgan holat: 200 OK. Javob tanasida data.id, tarif va ruxsat maʼlumotlari hamda hamyon xulosasi bor. Javobda x-request-id ham keladi; muvaffaqiyatsiz so‘rov haqida xabar berganda shu qiymatni saqlang.
{
"data": {
"id": "ACCOUNT_ID",
"email": "owner@example.com",
"plan": { "id": "pro", "status": "active" },
"entitlements": { "site_limit": 3, "live_voice": true },
"wallet": { "balance": 151 }
}
}/v1 yo‘lini o‘zgartirmasdan yangi maydonlar qo‘shilishi mumkin. Nomaʼlum maydonlar sabab javobni rad etish o‘rniga ularni eʼtiborsiz qoldiring.
4. Saytlar ro‘yxatini oling#
curl --fail-with-body "https://makeagent.fast/api/v1/sites?limit=20" \
-H "Authorization: Bearer $MAF_API_KEY" \
-H "Accept: application/json"To‘plam javoblari quyidagi qobiqdan foydalanadi:
{
"data": [],
"has_more": false,
"next_cursor": null
}has_more true bo‘lsa, aynan next_cursor qiymatini keyingi so‘rovning cursor query parametri sifatida yuboring. Cursorni dekodlamang yoki o‘zingiz yaratmang.
5. Tuzilmali xatoni qayta ishlang#
Authorization sarlavhasini vaqtincha olib tashlab, /me so‘rovini takrorlang. Javob barqaror kod bilan 401 bo‘lishi kerak:
{
"error": {
"code": "authentication_required",
"message": "Provide an API key in the Authorization bearer header.",
"request_id": "6c0b2f2e-..."
}
}Ishlab chiqarish kodi messageni taqqoslamasdan error.code bo‘yicha shoxlansin. Kalitni logga yozmasdan amal, HTTP holati va request IDʼni qayd eting.
6. Birinchi yozish amalini xavfsiz bajaring#
sites:write, agents:write va knowledge:write ruxsatlari ham bor alohida kalit yarating; tezkor qo‘llanmadagi o‘qish kalitining ruxsatlarini kengaytirmang. Aniq idempotency kalitlari bilan sayt yaratish, asoslangan bilim qo‘shish va nashr qilish uchun API retseptlariga amal qiling.
Birinchi so‘rovdagi odatiy xatolar#
| Natija | Sabab | Yechim |
|---|---|---|
401 authentication_required | Sarlavha yo‘q yoki Bearer TOKEN shaklida emas | Server kodidan aynan to‘g‘ri Authorization sarlavhasini yuboring |
401 invalid_api_key | Xato yozilgan, muddati tugagan, bekor qilingan kalit yoki boshqa turdagi hisob maʼlumoti | Yangi Make Agent Fast API kaliti yarating va nusxalang |
403 subscription_required | Faol pullik tarif yo‘q | Hisob obunasini tiklang |
403 insufficient_scope | Kalit amaliyot uchun kerakli ruxsatga ega emas | Faqat yetishmayotgan eng kam ruxsatli yangi kalit yarating |
429 rate_limit_exceeded | Kalitning bir daqiqalik oynasi to‘lgan | Retry-After bo‘yicha kuting va parallellikni kamaytiring |
Ruxsatlar va xatolar, API maʼlumotnomasi va So‘rov tezligi cheklovlari bilan davom eting.