# 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/ru.json
curl https://tempussit.com/data/v1/course/{slug}.json
curl -I https://tempussit.com/data/v1/ru/faq.json

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

## Условия

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

обновлено 9 ноября 2026 г.
