---
# System prepended metadata

title: Kriterij NIK

---

# Vsebinski kriterij NIK
## Raziskovanje API-ja

## OSNOVNA NALOGA
Samostojno poiščite in raziskajte javni brezplačni API z vsaj 3 različnimi funkcionalnostmi. Dokumentirajte strukture klicev in prikazanje dostopa do JSON podatkov.

Kar nekaj jih najdeš tu: https://github.com/public-apis/public-apis

---


## OCENJEVALNI KRITERIJI

### OCENA 2 (ZADOSTNO)
**Vsi pogoji morajo biti izpolnjeni:**

- [ ] Izbira javnega brezplačnega API-ja z vsaj 3 funkcionalnostmi
- [ ] Predstavitev API-ja z opisom namena in možnosti
- [ ] Prikazana struktura najmanj 2 različnih API klicev
- [ ] Dokumentiran odgovor API-ja v JSON obliki  
- [ ] Demonstracija dostopa do posameznih podatkov iz JSON strukture

### OCENA 3 (DOBRO)
**Vsi pogoji iz ocene 2 +:**

- [ ] Uporaba FOR zanke za obdelavo več podatkov iz API-ja
- [ ] Primer iteracije skozi seznam rezultatov
- [ ] Prikaz vsaj 3 različnih API klicev
- [ ] Filtriranje ali iskanje podatkov

### OCENA 4 (PRAV DOBRO)
**Vsi pogoji iz ocene 3 +:**

- [ ] Implementacija lastnih funkcij za delo z API-jem
- [ ] Funkcija za pridobivanje podatkov
- [ ] Funkcija za obdelavo/formatiranje podatkov
- [ ] Error handling (obravnava napak pri klicih)

### OCENA 5 (ODLIČNO)
**Vsi pogoji iz ocene 4 +:**

- [ ] Poljubna kreativna nadgradnja:
  - Grafični prikaz podatkov
  - Shranjevanje podatkov v datoteko
  - Kombiniranje več API-jev
  - Uporabniški vmesnik z input funkcijami
  - Statistična analiza podatkov
  - Primerjava ali rangiranje rezultatov

---

## PRIMER PREDSTAVITVE API-ja

### 1. Osnovni opis API-ja
```markdown
## [Ime API-ja]
**URL:** [povezava do API-ja]
**Namen:** [kratka razlaga, kaj API omogoča]
**Dokumentacija:** [povezava do uradno dokumentacijo]

### Glavne funkcionalnosti:
1. [Funkcionalnost 1] - [kratek opis]
2. [Funkcionalnost 2] - [kratek opis] 
3. [Funkcionalnost 3] - [kratek opis]
```

### 2. Strukture API klicev
```python
# KLIC 1: [Opis kaj dela]
# URL: [polna URL pot]
odgovor1 = requests.get("[URL]")

# KLIC 2: [Opis kaj dela]  
# URL: [polna URL pot]
odgovor2 = requests.get("[URL]")

# KLIC 3: [Opis kaj dela]
# URL: [polna URL pot] 
odgovor3 = requests.get("[URL]")
```

### 3. Primer JSON odgovora
```json
{
  "primer": "json odgovora",
  "struktura": "podatkov",
  "ključi": ["seznam", "vrednosti"]
}
```

### 4. Dostopanje do podatkov
```python
# Pretvorimo odgovor v Python objekt
podatki = odgovor.json()

# Dostopamo do posameznih podatkov
vrednost1 = podatki["kljuc1"]
vrednost2 = podatki.get("kljuc2", "Privzeta vrednost")

# Prikažemo rezultate
print(f"Rezultat: {vrednost1}")
```

---

## TEHNIČNE ZAHTEVE
- **Programski jezik:** Python (obvezno uporaba requests knjižnice)
- **Dokumentacija:** Komentarji v kodi + README.md datoteka
- **Struktura oddaje:**
  - `main.py` - glavna koda
  - `README.md` - opis projekta in predstavitev API-ja
  - Dodatne datoteke po potrebi

## OSNOVE DELA Z API-jem

### Uvoz knjižnice
```python
import requests
```

### Osnovni klic
```python
odgovor = requests.get("URL_DO_API")
if odgovor.status_code == 200:
    podatki = odgovor.json()
    print("Podatki uspešno pridobljeni!")
else:
    print(f"Napaka: {odgovor.status_code}")
```

### Varno dostopanje do podatkov
```python
# Uporabi .get() za varno dostopanje
vrednost = podatki.get("kljuc", "Privzeta vrednost")

# Preveri obstoj ključa
if "kljuc" in podatki:
    vrednost = podatki["kljuc"]
```

## NASVETI ZA ISKANJE API-ja
- Iščite "free public API" ali "no auth API"
- Preverite, da ne potrebuje registracije ali API ključa
- Testirajte API v brskalniku najprej
- Preberite dokumentacijo za razumevanje strukture

## ROK ODDAJE
**10.6.2025**

---
*Opomba: Za dosego višje ocene morajo biti izpolnjeni VSI pogoji nižjih ocen.*