# API відкритих даних

Усе, що опубліковано на Tempussit, — курси, статті блогу, поняття та часті запитання — доступне у форматі JSON для програм та ШІ-асистентів. Лише читання, без ключа й реєстрації.

## Що є

**`GET /data/v1/index.json`**

Зміст: мови сайту, каталоги курсів і посилання на всі файли даних.

**`GET /data/v1/courses/{languageKey}.json`**

Курси однієї мови каталогу, по 100 на сторінку (параметр ?page=).

**`GET /data/v1/course/{slug}.json`**

Картка одного опублікованого курсу: назва, опис, автор, мови, ціна, програма, адреса сторінки та обкладинка.

**`GET /data/v1/{languageCode}/{kind}.json`**

Поняття, часті запитання, розділи та статті блогу однією мовою сайту.

**`GET /data/v1/openapi.json`**

Опис усіх відповідей у форматі OpenAPI 3.1.

## Приклади запитів

```
curl https://tempussit.com/data/v1/index.json
curl https://tempussit.com/data/v1/courses/uk.json
curl https://tempussit.com/data/v1/course/{slug}.json
curl -I https://tempussit.com/data/v1/uk/faq.json

fetch("https://tempussit.com/data/v1/uk/glossary.json")
  .then(response => response.json());
```

## Умови

- Лише читання: приймаються тільки запити GET і HEAD.
- Кількість запитів з однієї IP-адреси на хвилину обмежена. Понад ліміт — відповідь 429 із заголовком Retry-After.
- Відповіді можна кешувати 5 хвилин і запитувати з браузера на будь-якому сайті (Access-Control-Allow-Origin: \*).
- Лише те, що видно на відкритих сторінках: без чернеток, покупок і особистих даних.
- Версія — частина адреси (/data/v1/). Попередні адреси без версії працюють і далі.

оновлено 9 листопада 2026 р.
