HuqSi API

Sənədlər

REST və MCP qapısının istifadə qaydaları, nümunələr, limitlər və xəta kodları.

Limitlər və planlar

Yeni hesab Developer planı ilə başlayır. Plan hesaba (istifadəçiyə) bağlıdır, açara yox.

Plan Dəqiqədə Ayda Aktiv açar Açar müddəti İstehsalat üçün Endpoint-lər
Developer (developer) 20 100 1 30 gün xeyr — yalnız inkişaf və sınaq hamısı
Starter (starter) 60 15 000 3 müddətsiz bəli hamısı
Pro (pro) 150 75 000 5 müddətsiz bəli hamısı
Business (business) 300 300 000 10 müddətsiz bəli hamısı

Developer planı yalnız inkişaf və sınaq üçündür. Kommersiya məhsulunda və ya ictimai xidmətdə pullu plan tələb olunur (İstifadə şərtləri). Plan dəyişmək üçün api@huqsi.az ünvanına e-poçtunuzu və məqsədinizi yazın. Dəyişiklik bütün açarlarınıza və qoşulmuş tətbiqlərinizə dərhal şamil olunur, açarlar dəyişmir.

Limitlər istifadəçiyə bağlıdır

  • Dəqiqəlik limit (rpm): sürüşən 60 saniyəlik pəncərədə sorğu sayı. Aşılanda 429 rate_limited və Retry-After (saniyə) qayıdır.
  • Aylıq kvota: təqvim ayı (UTC) üzrə sorğu sayı. Aşılanda 429 quota_exceeded qayıdır. Kvota ayın 1-də sıfırlanır.
  • Hər iki limit bütün açarlarınız və OAuth ilə qoşulmuş tətbiqləriniz üçün ortaqdır. Üç açar və iki tətbiqlə işləsəniz də ümumi say planın rəqəmini keçmir. Açarı ləğv edib yenisini yaratmaq sayğacı sıfırlamır: həmin ayın istifadəsi hesabda qalır.
  • Kabinetdə göstərilən aylıq rəqəm kvotanın yoxlandığı sayğacın özüdür.

IP tavanı

Açardan və hesabdan asılı olmayaraq, bir IP ünvanından dəqiqədə ən çox 360 sorğu qəbul olunur. Aşılanda 429 ip_rate_limited və Retry-After qayıdır. Tavan ən böyük planın dəqiqəlik limitindən bir az yuxarıdır. Ona görə bir IP arxasındakı bir inteqrasiya öz planına çatana qədər tavana dəymir. Bir IP-dən işləyən bir neçə hesabın birlikdə yaratdığı yük isə bu tavanla məhdudlaşır.

Açarın müddəti

Bəzi planlarda (cədvəldə «Açar müddəti») açar yaradıldığı və ya yeniləndiyi gündən müəyyən gün sonra etibarsız olur. Müddəti bitmiş açar 401 key_expired qaytarır. Kabinetdə açarın yanında bitmə tarixi və «Yenilə» düyməsi görünür. Bir klik müddəti həmin gündən yenidən uzadır, açarın özü dəyişmir. Müddətsiz plana keçəndə açarların müddəti nəzərə alınmır.

Aktiv açar sayı plana görə məhduddur (cədvəldə «Aktiv açar»). Yeni açar üçün yer açmaq məqsədilə köhnəsini ləğv edə bilərsiniz.

OAuth qoşulmaları (Claude.ai, ChatGPT …)

  • Giriş tokeni 60 dəqiqə yaşayır. Klient onu refresh token ilə özü yeniləyir, bu istifadəçi üçün görünmür.
  • Developer: qoşulma «Connect»-dən sonra 30 gün işləyir, sonra klient yenidən «Connect» istəyir (açarın müddətinin qarşılığı).
  • Starter, Pro, Business: qoşulma istifadə olunduqca uzanır, 90 gün istifadə olunmasa sönür.
  • Bir hesabda ən çox 10 aktiv qoşulma ola bilər. Bu hədd açar limitindən ayrıdır. Qoşulmanı kabinetdə «Qoşulmuş tətbiqlər» bölməsində ləğv edə bilərsiniz.
  • Qaydalar hesabın cari planından götürülür: plan yüksələndə mövcud qoşulmalar dərhal yeni plana keçir.
  • Tokenlər açıq mətn kimi saxlanmır (yalnız hash). Ləğv dərhal qüvvəyə minir.

Nə sayılır

  • REST-də autentifikasiyadan keçən hər /v1/* sorğusu sayılır, cavabın kodundan asılı olmayaraq (məsələn, 404 və 422 də). Bunlar sayılmır:
  • 401: açar və ya token yoxdur, tanınmır, ləğv edilib və ya müddəti bitib. Belə sorğu heç bir hesaba yazılmır;
  • 403 forbidden və bütün 429 cavabları;
  • 503: qanun bazası cavab vermədikdə sorğu geri qaytarılır.
  • MCP-də yalnız alət çağırışları sayılır. initialize və tools/list sayılmır. Alət xətaları REST ilə eyni qaydaya tabedir.

Cavab ölçüsü

  • POST /v1/search hər nəticədə maddənin tam mətnini qaytarmır. Sorğuya ən uyğun parçanı (snippet, ən çox 600 simvol) qaytarır. Tam mətni GET /v1/articles/{id} verir.
  • GET /v1/articles/{id} mətni ən çox 100 000 simvoldur. Daha uzun mətn (məsələn, maddəsiz tək-mətnli akt) cümlə sərhədində kəsilir: truncated: true, tam uzunluq text_length-də verilir. Tam mətn law.source_url-dadır. Bütöv qanun bir cavabda heç vaxt göndərilmir.
  • MCP-də hədlər belədir: parça 600, maddə 30 000 simvol. Nəticə modelin kontekstinə düşür, ona görə hədd kiçikdir.

Allowlist

Planın görmədiyi endpoint 403 forbidden qaytarır. Mesajda plan və endpoint adı olur. Allowlist konfiqurasiya ilə idarə olunur. Yeni endpoint-lər defolt olaraq hamıya bağlıdır.

MCP alətləri eyni allowlist-ə tabedir: search_law → search, get_article → articles.get, get_article_history → articles.history.

Başlıqlar

Hər /v1 və /mcp cavabında X-Plan: <plan> başlığı qayıdır. /v1 cavablarında əlavə olaraq X-RateLimit-* başlıqları (dəqiqəlik və aylıq qalıq, hesab üzrə) qayıdır. Bax REST nümunələri.

Loglar

Hər sorğu üçün bunlar saxlanır: açar id-si, endpoint, status, vaxt, müddət. Sorğu mətni defolt olaraq saxlanmır. Xam sətirlər 90 gündən sonra silinir. Ətraflı: Məxfilik.