Question bank API for the Turkish curriculum

Logaritim's question bank API delivers reviewed multiple-choice questions written for the Turkish curriculum: national exams such as LGS, TYT, AYT and KPSS, and school subjects for grades 6, 7 and 9 to 11. You name the exam, subject, topics and target difficulty; each question comes back as JSON with its stem, options, correct answer, explanation and learning objective. The questions are in Turkish. Each question costs 1 credit, charged only the first time it reaches your API account, and by default the same question is never sent to that account twice.

How it works

  1. Open an account and get your key

    On the API page of the account panel you accept the API terms of use and create a key. The key is shown once; only its hash is stored. Send it in the X-API-Key header or as Authorization: Bearer.

  2. Check the catalog and the stock

    GET /v1/catalog/exams, /catalog/subjects and /catalog/topics list exams, subjects and topics with live question counts. POST /v1/questions/availability checks the stock before an order and uses no credits or quota.

  3. Place the order

    In POST /v1/questions/draw you name the exam and give the question count either as a total (count) or topic by topic (blueprint). Difficulty is a 1 to 5 target: questions closest to it are picked first.

  4. Questions arrive in the response

    Each question carries its stem, options, correct answer, explanation, learning objective and keywords. A question you have received can be read again later with GET /v1/questions/{id} at no cost.

Example request

The request below asks for 15 LGS mathematics questions aimed at medium difficulty: 10 on factors and multiples, 5 on ratio and proportion. Topic names are sent in Turkish, exactly as the catalog returns them. The Idempotency-Key header means that resending the same request after a dropped connection is not charged again: the same questions come back without a new delivery.

POST https://api.logaritim.com/v1/questions/draw
X-API-Key: qg_live_...
Idempotency-Key: order-2026-10-12-001
Content-Type: application/json

{
  "exam": "LGS",
  "subject": "Matematik",
  "difficulty": 3,
  "blueprint": [
    { "topic": "Çarpanlar ve Katlar", "count": 10 },
    { "topic": "Oran ve Orantı", "count": 5 }
  ],
  "exclude_delivered": true
}

Response

The response states how many questions were requested and delivered, the credits spent and the balance left. If a topic runs short, the missing part is reported topic by topic with a reason in the shortfall field, and no credit is charged for it.

{
  "delivery_id": "8f3c…",
  "requested": 15,
  "delivered": 15,
  "replayed": false,
  "credits": { "cost": 15, "balance": 35 },
  "shortfall": [],
  "questions": [
    {
      "id": "4538015e…",
      "exam": "LGS",
      "subject": "Matematik",
      "topic": "Çarpanlar ve Katlar",
      "difficulty": 3,
      "stem": "24 sayısının pozitif tam bölen…",
      "options": [ { "letter": "A", "text": "6" }, … ],
      "answer": { "index": 2, "letter": "C" },
      "explanation": "…"
    }
  ]
}

Credits and pricing

The API and exam building in the account panel share one credit balance. Each question delivered through the API costs 1 credit, charged only the first time it reaches your API account. Repeating the same request, stock checks and re-reading a question you already received are free.

New accounts receive 50 free credits, enough to try the API. Credit packages and current prices are listed in the account panel; payment is currently by bank transfer in Turkish lira and is credited once approved.

Limits

If you need higher limits, write to us through the contact channels below.

  • With a credit balance: 5,000 new questions a month, 60 requests a minute and up to 25 questions per request.
  • The monthly quota counts questions first delivered to your API account that month and resets on the 1st.
  • With a zero balance the catalog and stock endpoints work; drawing questions needs credits.
  • Every response carries X-RateLimit-Limit and X-RateLimit-Remaining headers; going over returns 429 with Retry-After.

Which questions you get

The API picks from the reviewed pool open to your account: school subjects for grades 6, 7 and 9 to 11; national exams such as LGS, TYT, AYT, KPSS, ALES and DGS; and language exams such as YDS, YDT and YÖKDİL. The questions follow the Turkish curriculum and are written in Turkish. The catalog endpoints give live counts per exam, subject and topic.

The API currently delivers questions without visuals only. Questions with charts, figures or tables are available in the PDF exams built in the account panel.

Delivery ledger: by default a question already delivered to the same API account is not sent again. You can turn this off with the exclude_delivered field; a repeated question is not charged.

Common response codes

Errors always use the same envelope: error.code, error.message and a request_id for tracing.

  • 401: missing or invalid key.
  • 402: not enough credits.
  • 404: unknown exam or subject; the response lists the valid values.
  • 409: the same Idempotency-Key was used with a different request body.
  • 429: monthly quota or per-minute request limit exceeded.

Frequently asked questions

Are the questions in English?

No. The questions are written in Turkish for the Turkish curriculum. Field names and the OpenAPI schema are in English; parts of the documentation text are in Turkish.

Does trying the API cost anything?

New accounts receive 50 free credits, and each question through the API costs 1 credit, so you can try up to 50 questions for free. Catalog and stock calls use no credits.

Do I pay twice for the same question?

No. A credit is charged only the first time a question reaches your API account. Requests repeated with the same Idempotency-Key, re-reading a question you received and repeats you allow are free.

Do answers and explanations come with the questions?

Yes. By default each question includes the correct option (letter and index) and an explanation; you can turn them off with the include_answers and include_explanation fields.

Which programming language can I use?

Any HTTP client. Requests and responses are JSON; every endpoint and the full schema are in the interactive documentation at https://api.logaritim.com/v1/docs, and the OpenAPI schema is at /v1/openapi.json.

Updated: 2026-10-12