API referansı

Yapay zekânın — ya da senin — çağırabileceği her şey: okul müfredatları, quizin kendisi, görseller, PDF’ler ve çalışıyor göstergesi.

Nasıl kimlik doğrulanır

Quiz çağrıları Authorization: Bearer ve quiz anahtarını ister. İki kaydın birbirinin üstüne yazmaması için güncel sürüm numarasıyla If-Match gönder. Bu yanıtlar asla önbelleğe alınmaz.

Tam şemayı aç

Temel URL

https://quiz.ai/api/v1

Nasıl kimlik doğrulanır

Authorization: Bearer <quiz-scoped-key>

API haritası

GET
/api/v1

API’nin haritası ve ardından gelen bağlantılar.

Anahtar gerekmez
GET
/api/v1/openapi.json

OpenAPI 3.1 şemasının tamamı — okuyabilen araçlar için işe yarar.

Anahtar gerekmez

Okul müfredatları

GET
/api/v1/curricula

Bildiğimiz okul müfredatlarını listele.

Anahtar gerekmez
GET
/api/v1/curricula/{curriculumId}

Tek bir müfredatın ayrıntılarını oku.

Anahtar gerekmez
GET
/api/v1/curricula/{curriculumId}/objectives?subject=math&grade=5&limit=100&offset=0

Bir müfredatın öğrenme hedeflerini ders ve sınıfa göre ara.

Anahtar gerekmez

Quiz

GET
/api/v1/target

Bu anahtarın yazmasına izin verilen quizi gör.

Quiz anahtarı
GET
/api/v1/quizzes/{quizId}

Güncel quizi ve sürüm numarasını oku.

Quiz anahtarı
PUT
/api/v1/quizzes/{quizId}

Tüm quizi tek kayıtta değiştir. Daha yeni işin üstüne yazmamak için If-Match gönder.

Quiz anahtarı
POST
/api/v1/quizzes/{quizId}/publish

Quizi kontrol et ve herkese açık yap. Daha yeni işin üstüne yazmamak için If-Match gönder.

Quiz anahtarı

Görseller

POST
/api/v1/quizzes/{quizId}/images

PNG, JPEG, GIF veya WebP yükle. Temiz, durağan bir WebP saklarız.

Quiz anahtarı
POST
/api/v1/quizzes/{quizId}/images/templates

Bir şablondan soru görseli çiz ya da PNG veya SVG olarak önizle.

Quiz anahtarı
GET
/api/v1/quizzes/{quizId}/images/{imageId}

Saklanan bir görseli indir. Range istekleri desteklenir.

Quiz anahtarı
DELETE
/api/v1/quizzes/{quizId}/images/{imageId}

Hiçbir sorunun kullanmadığı bir görseli sil.

Quiz anahtarı
Soru görselleri

PDF’ler ve etkinlik

POST
/api/v1/quizzes/{quizId}/activity

90 saniyelik “hâlâ çalışıyor” sinyalini başlat, yenile veya durdur.

Quiz anahtarı
GET
/api/v1/quizzes/{quizId}/sheet.pdf?names=Alice,Bob&class=5B&key=0

Yazdırılabilir bir cevap kâğıdı indir. Ad, sınıf ve cevap anahtarı ekleyebilirsin.

Quiz anahtarı

Quizin tamamını kaydet

Yapay zekân başlığı, açıklamayı, dili ve her soruyu bir seferde gönderir. Aynı geçerli quizi iki kez göndermek güvenlidir.

HTTP
PUT /api/v1/quizzes/qz_7KF2M9qTx3aB
Authorization: Bearer <quiz-scoped-key>
Content-Type: application/json
If-Match: "0"

{
  "title": "A quick tour of the Solar System",
  "description": "Ten friendly questions for curious adults.",
  "language": "en-gb",
  "questions": [
    {
      "prompt": "Which planet has the shortest year?",
      "choices": ["Mercury", "Venus", "Earth", "Mars"],
      "correctChoiceIndex": 0,
      "explanation": "Mercury orbits the Sun in about 88 Earth days."
    }
  ]
}

Soru kuralları

  • Her sorunun net bir metni ve iki ila altı dolu şıkkı olmalı.
  • Sınırlar: başlık 140 karakter, açıklama 1.000, 1–100 soru, soru metni 500, her şık 240, açıklama 1.000.
  • correctChoiceIndex, doğru şıkkın sıfırdan başlayan indeksidir.
  • Soru sırası dizi sırasıdır — listedeki ilk soru 1. sorudur.
  • İki kaydın birbirini ezmemesi için If-Match başlığında en son sürüm numarasını gönder.

Doğru görününce yayınla

Yayınlamak quizi bir kez daha kontrol eder ve kalıcı bir herkese açık bağlantı verir. Bir şey eksikse düzelt, yeniden kaydet ve yayınla.

HTTP
POST /api/v1/quizzes/qz_7KF2M9qTx3aB/publish
Authorization: Bearer <quiz-scoped-key>
If-Match: "1"