# API otwartych danych

Wszystko, co opublikowano na Tempussit — kursy, artykuły bloga, pojęcia i częste pytania — jest dostępne w formacie JSON dla programów i asystentów AI. Tylko odczyt, bez klucza i rejestracji.

## Co jest dostępne

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

Spis treści: języki serwisu, katalogi kursów i linki do wszystkich plików danych.

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

Kursy jednego języka katalogu, po 100 na stronę (parametr ?page=).

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

Karta jednego opublikowanego kursu: tytuł, opis, autor, języki, cena, program, adres strony i okładka.

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

Pojęcia, częste pytania, działy i artykuły bloga w jednym języku serwisu.

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

Opis wszystkich odpowiedzi w formacie OpenAPI 3.1.

## Przykładowe zapytania

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

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

## Warunki

- Tylko odczyt: przyjmowane są wyłącznie zapytania GET i HEAD.
- Liczba zapytań z jednego adresu IP na minutę jest ograniczona. Powyżej limitu odpowiedź to 429 z nagłówkiem Retry-After.
- Odpowiedzi można przechowywać w pamięci podręcznej 5 minut i pobierać z przeglądarki na dowolnej stronie (Access-Control-Allow-Origin: \*).
- Tylko to, co widać na stronach publicznych: bez szkiców, zakupów i danych osobowych.
- Wersja jest częścią adresu (/data/v1/). Wcześniejsze adresy bez wersji nadal działają.

zaktualizowano 9 listopada 2026
