Sahifa mazmuniga oʻtish
Hujjatlar
Make Agent Fast hujjatlari

Ruxsatlar va xatolar

Eng kam ruxsatni bering va ochiq APIʼning barcha barqaror xato kodlarini qayta ishlang.

Qisqacha koʻrinish

Eng kam ruxsatni bering va ochiq APIʼning barcha barqaror xato kodlarini qayta ishlang.

API soʻrovi yoʻliCheklangan kalit → versiyalangan resurs → imzolangan javob
Ilova / SDKBearer kalitimaf_live_…/api/v1/…ResursJSON
33 ta ruxsatBarqaror kodlarRequest IDʼlar

Har bir ochiq API amali bitta aniq ruxsat talab qiladi. Shu ruxsati yo‘q haqiqiy hisob maʼlumoti 403 insufficient_scope oladi; unga kengroq kirish hech qachon yashirincha berilmaydi.

Ruxsatlar maʼlumotnomasi#

RuxsatImkon beradi
account:readAutentifikatsiya qilingan hisob, tarif, huquqlar va hamyon xulosasini o‘qish
tickets:readYordam chiptalari va ularning xabarlarini o‘qish
tickets:writeChiptalarni yangilash, jamoadoshlarga biriktirish va ichki izoh yoki mijozga javob qo‘shish
team:readJamoa aʼzolari, kutilayotgan takliflar va ruxsat etilgan audit hodisalarini o‘qish
team:writeTaklif yaratish yoki bekor qilish va ega bo‘lmagan jamoa rollarini boshqarish
integrations:readRuxsat berilgan GitHub App o‘rnatmalari va repozitoriylarini ko‘rish
integrations:writeIntegratsiya o‘zgarishlarini tayyorlash va qoralama pull requestlar yaratish
sites:readSaytlarni ro‘yxatlash va olish
sites:writeSayt yaratish, yangilash, nashr qilish, nashrdan olish va o‘chirish
agents:readAgent sozlamalarini o‘qish
agents:writeAgent xulqi, tili, ovozi va embed sozlamalarini yangilash
knowledge:readBilim manbalari va FAQʼlarni ro‘yxatlash
knowledge:writeBilim manbalari va FAQʼlarni yaratish, yangilash va o‘chirish
conversations:readSuhbatlarni ro‘yxatlash va xabarlarini olish
conversations:writeSuhbatni o‘z qo‘lingizga olish: tashrifchiga biznes nomidan javob berish, unda agentni pauzaga qo‘yish va qaytarish
leads:readYig‘ilgan lidlarni ro‘yxatlash
leads:writeLid yaratish, yangilash, qualify qilish va imkoniyat pipelineʼiga qabul qilish
pipeline:readBosqich, hisob, imkoniyat, faollik, atributsiya va CRM sinxron holatini o‘qish
pipeline:writeBosqich sozlash, hisob/imkoniyat yaratish yoki yangilash, CRM natijasini import/qayta urinish
analytics:readSayt tahlil hodisalarini o‘qish
connectors:readSirlarni qaytarmasdan konnektor holatini ro‘yxatlash
connectors:writeKonnektor yaratish, yangilash, yoqish, o‘chirish va olib tashlash
domains:readOlib tashlangan. Faqat moslik uchun saqlangan; maxsus domenlar taklif etilmagani uchun har bir /domains yo‘li 409 qaytaradi
domains:writeOlib tashlangan. Faqat moslik uchun saqlangan; har bir /domains yo‘li 409 qaytaradi
broadcasts:readOmmaviy xabar va yetkazish holatini ro‘yxatlash
broadcasts:writeQoralama yaratish va ommaviy yuborishni navbatga qo‘yish
notifications:readEga bildirishnomalarini ro‘yxatlash
notifications:writeBildirishnomani o‘qilgan yoki o‘qilmagan deb belgilash
monetization:readMonetizatsiya mahsulotlarini ro‘yxatlash
monetization:writeMahsulot yaratish, yangilash, faollashtirish, faolsizlantirish va o‘chirish
usage:readO‘lchangan foydalanish hodisalarini o‘qish
webhooks:readWebhook endpointlari va yetkazish holatini ro‘yxatlash
webhooks:writeWebhook endpointini yaratish va o‘chirish

Hisobot vazifalari uchun o‘qish ruxsatlarini ishlating. Faqat integratsiya o‘sha o‘zgarishni bajarsa yozish ruxsatini qo‘shing. Masalan, lid eksportiga odatda sites:read va leads:read kerak, sites:write yoki agents:write emas.

Ruxsat xatolari#

{
  "error": {
    "code": "insufficient_scope",
    "message": "The API key does not grant the required scope.",
    "details": { "required": ["sites:write"] },
    "request_id": "6c0b2f2e-..."
  }
}

Yetishmayotgan ruxsatni Sozlamalar → Dasturchilar uchun → Tahrirlash orqali kalitga qo‘shing yoki yangi kalit yaratib, server sirini yangilang. Tahrirlash kalit nomi va ruxsatlarini joyida o‘zgartiradi; uning amal muddati va tokeni o‘zgarmaydi. OAuth orqali berilgan kalitlarni tahrirlab bo‘lmaydi; ilovaga berilgan ruxsatlarni o‘zgartirish uchun uni qayta ulang.

Xato qobig‘i#

Barcha API xatolari bir xil yuqori darajadagi tuzilmani ishlatadi:

type ApiError = {
  error: {
    code: string;
    message: string;
    details?: unknown;
    request_id: string;
  };
};

Inglizcha messageni taqqoslamasdan error.code bo‘yicha shoxlansin. Xabarlar versiya o‘zgarmasdan yaxshilanishi mumkin. Amal nomi, holat va urinish bilan error.request_id hamda x-request-id javob sarlavhasini log qiling, ammo authorization sarlavhasi yoki so‘rov sirlarini hech qachon yozmang.

Holat va kod maʼlumotnomasi#

HTTPBarqaror kodMaʼnosiOdatiy javob
400invalid_requestTekshiruv ishlamadi yoki maydon qo‘llab-quvvatlanmaydidetailsdagi maydonlarni to‘g‘rilang; o‘zgarmagan kiritma bilan qayta urinmang
400invalid_jsonTana JSON obyekt emas yoki noto‘g‘ri JSONBitta haqiqiy JSON obyekt yuboring
401authentication_requiredBearer sarlavhasi yo‘qServer hisob maʼlumotini qo‘shing
401invalid_api_keyKalit noto‘g‘ri, muddati tugagan, bekor qilingan yoki egasi yo‘qKalitni almashtiring yoki yangilang
403subscription_requiredEgasida faol pullik tarif yo‘qQayta urinishdan oldin obunani tiklang
403insufficient_scopeHisob maʼlumotida amal ruxsati yo‘qEng kam ruxsatli yangi hisob maʼlumoti yarating
404not_foundEndpoint yoki egaga tegishli resurs topilmadiYo‘l va tenantga tegishli IDʼni tekshiring
409conflictJoriy resurs holati amalga to‘sqinlik qiladiQayta urinishdan oldin joriy holatni o‘qing
413payload_too_largeJSON tanasi 256 KB so‘rov chegarasidan oshadiKichikroq tana yuboring; katta kontentni bir nechta so‘rovga bo‘ling
415invalid_requestO‘zgartirish tanasi application/json emasContent-Type: application/json yuboring
429rate_limit_exceededKalitning bir daqiqalik tarif oynasi to‘lganRetry-Afterni kuting va tasodifiy og‘ish qo‘llang
500internal_errorSo‘rovni yakunlab bo‘lmadiXavfsiz yoki idempotent amalni qayta urinib, request IDʼni xabar qiling
503outcome_unknownO‘zgarish bajarilgan bo‘lishi mumkin, lekin natijasini qayd etib bo‘lmadi; details.retryable falseQayta urinmang. O‘zgarish bo‘lgan-bo‘lmaganini bilish uchun resursni o‘qing; bir xil idempotency kaliti shu natijani qaytarishda davom etadi

Boshqa tenantdagi resurs mavjudligini oshkor qilmaslik uchun hisob egasidan tashqaridagi resurslar 404 qaytarishi mumkin.

Tekshiruv tafsilotlari#

Maydon tekshiruvi o‘z forma boshqaruvingiz yonida ko‘rsatish mumkin bo‘lgan yo‘llarni qaytaradi:

{
  "error": {
    "code": "invalid_request",
    "message": "Request validation failed.",
    "details": [
      { "path": "content.headline", "message": "String must contain at least 1 character(s)" }
    ],
    "request_id": "6c0b2f2e-..."
  }
}

O‘zgartirish tanalari JSON obyekt bo‘lishi kerak. Array, bo‘sh tana, form data va text content type bilan yuborilgan JSON rad etiladi.

Qayta urinish qarorlari#

  • 429dan keyin Retry-After ko‘rsatgan soniya kutib qayta urining.
  • 500ni faqat xavfsiz o‘qish yoki bir xil Idempotency-Key bilan himoyalangan yozishda qayta urining.
  • Jarayondagi idempotency 409 xatosidan keyin uning Retry-After: 2 sarlavhasiga ko‘ra qayta urining.
  • 503 outcome_unknownni hech qachon ko‘r-ko‘rona qayta urinmang. Avval resursni tekshiring; yangi idempotency kalitidan faqat o‘zgarish bo‘lmaganini tasdiqlagach foydalaning.
  • Sabab o‘zgarmaguncha 400, 401, 403, 404, 413 yoki holat ziddiyatini qayta urinmang.

Kutish tartibi uchun So‘rov tezligi cheklovlari, har amal ruxsati uchun API maʼlumotnomasiga qarang.