Vodiči

Šta je API? Vodič za pravljenje aplikacija bez programiranja

API (application programming interface) je definisan način na koji jedan softver traži od drugog podatke ili da mu nešto uradi. Vaša aplikacija šalje zahtev u dogovorenom formatu — „daj mi sutrašnje rezervacije”, „naplati ovu karticu 20 evra”, „sažmi ovaj tekst” — a drugi sistem vraća strukturisan odgovor. API-ji su način na koji se delovi aplikacije međusobno povezuju, i kako vaša aplikacija koristi spoljne servise poput plaćanja, email-a, mapa i AI-ja.

Zašto su API-ji važni kad pravite uz AI

Gotovo svaka korisna aplikacija sastavljena je od delova koji komuniciraju preko API-ja:

  • Unutar vaše aplikacije, ekrani u pregledaču pozivaju API vaše pozadine da učitaju i sačuvaju podatke.
  • Van vaše aplikacije, vaša pozadina poziva API-je drugih kompanija: Stripe za naplatu, provajdera email-a za slanje računa, provajdera AI modela za generisanje teksta.

Kada od AI alata zatražite da „naplaćuje plaćanja” ili „dodaj AI sažetak”, on zapravo piše kod koji poziva API. Osnove vam pomažu da razumete šta AI treba od vas (obično nalog kod tog servisa i API ključ), gde stvari mogu da krenu naopako i koliko će koštati.

Svakodnevna analogija

Zamislite restoran. Ne ulazite u kuhinju i ne kuvate sami. Čitate jelovnik, kažete konobaru šta želite na način koji kuhinja razume, a konobar donosi hranu — ili kaže da je jelo rasprodato.

  • Jelovnik je dokumentacija API-ja: spisak onoga što možete da tražite i kako.
  • Konobar je API: jedan dogovoren način na koji zahtevi ulaze, a odgovori izlaze.
  • Kuhinja je drugi sistem: ne morate da znate kako radi unutra.
  • Vaša porudžbina je zahtev; tanjir je odgovor.

Kuhinja može da promeni rernu i osoblje, a da vas to ne pogodi, sve dok jelovnik ostaje isti. U tome je prava vrednost API-ja: dva sistema mogu da rade zajedno, a nijedan ne mora da zna kako je drugi napravljen.

Kako radi zahtev ka veb API-ju

Većina API-ja koje ćete sresti su veb API-ji koji rade preko HTTP-a, istog protokola koji koristi vaš pregledač. Svaki zahtev ima nekoliko delova:

DeoŠta jePrimer
MetodaVrsta radnjeGET (čitanje), POST (kreiranje)
URL / krajnja tačkaAdresa stvari nad kojom raditehttps://api.example.com/bookings
ZaglavljaDodatne informacije, uključujući ko steAuthorization: Bearer <vaš ključ>
TeloPodaci koje šaljete, za kreiranje i izmene{"name": "Lena", "time": "14:00"}

A svaki odgovor ima:

DeoŠta jePrimer
Statusni kodBroj koji kaže kako je prošlo200 OK, 201 Created, 404 Not Found
TeloVraćeni podaci, obično kao JSON{"id": 5001, "status": "confirmed"}

JSON (JavaScript Object Notation) je jednostavan tekstualni format sa imenima i vrednostima u vitičastim zagradama. To je standardan način na koji veb API-ji razmenjuju podatke.

REST: najčešći stil

REST je široko korišćena konvencija za projektovanje veb API-ja. Svaka vrsta stvari dobija svoju URL adresu, a standardne metode govore šta se radi s njom. Evo kako bi REST API za aplikaciju za rezervacije mogao da izgleda:

MetodaKrajnja tačkaŠta radi
GET/api/bookingsLista rezervacija
GET/api/bookings/5001Vraća jednu rezervaciju
POST/api/bookingsPravi novu rezervaciju
PATCH/api/bookings/5001Menja deo rezervacije, na primer vreme
DELETE/api/bookings/5001Otkazuje (briše) rezervaciju

PUT takođe postoji i po konvenciji zamenjuje ceo zapis, dok PATCH menja samo polja koja pošaljete.

Statusni kodovi koje ćete najčešće videti:

KodZnačenje
200 / 201Uspeh / kreirano
400Loš zahtev — nešto u onome što ste poslali je pogrešno ili nedostaje
401Nije autentifikovano — nema važeće prijave ili ključa
403Zabranjeno — poznati ste, ali ne smete ovo da uradite
404Nije pronađeno
429Previše zahteva — dostigli ste ograničenje brzine
500Server je imao grešku

Kada vaša aplikacija pukne, statusni kod je često najbrži trag. 401 od provajdera plaćanja obično znači da ključ nedostaje ili je pogrešan; 429 znači da zovete previše često.

REST nije jedini stil — postoje i GraphQL i RPC API-ji — ali REST je ono što koristi većina servisa i backend-ova pravljenih uz AI.

Radni primer: potvrda rezervacije

Kada klijent rezerviše šišanje u aplikaciji salona, za sekund ili dva može da se dogodi nekoliko poziva API-ja:

  1. Stranica za rezervaciju u pregledaču šalje POST /api/bookings sa uslugom, terminom i podacima klijenta vašoj pozadini.
  2. Vaša pozadina proverava da li je termin slobodan, čuva rezervaciju u bazi podataka i vraća 201 Created.
  3. Vaša pozadina poziva API provajdera email-a sa njegovim tajnim ključem: „pošalji ovu potvrdu na lena@example.com.”
  4. Ako postoji depozit, vaša pozadina traži od API-ja provajdera plaćanja da napravi sesiju za plaćanje i šalje klijenta tamo.
  5. Kasnije, provajder plaćanja poziva vašu aplikaciju da kaže da je plaćanje uspelo. Taj obrnuti poziv je webhook.

Prva dva koraka su vaš sopstveni API između frontenda i backend-a. Koraci 3–5 su API-ji trećih strana.

Uobičajeni pojmovi objašnjeni

PojamZnačenje
Krajnja tačka (endpoint)Jedna konkretna URL adresa na koju API odgovara.
API ključTajna niska koja identifikuje vašu aplikaciju kod servisa. Tretirajte je kao lozinku.
AutentifikacijaDokazivanje ko poziva — ključem, tokenom ili prijavom. Pogledajte šta je autentifikacija.
Ograničenje brzine (rate limit)Gornja granica broja zahteva koje možete poslati u određenom periodu.
SDKGotova biblioteka koda koja olakšava pozivanje određenog API-ja.
Dokumentacija„Jelovnik”: koje krajnje tačke postoje, šta primaju i vraćaju.
Sandbox / test režimVerzija servisa za testiranje bez pravog novca ili pravih podataka.
WebhookPoziv iz drugog servisa u vašu aplikaciju kada se nešto desi.

Česte greške i zablude

  • Stavljanje tajnih ključeva u frontend. Sve u kodu koji se izvršava u pregledaču može da vidi svako ko poseti stranicu. Tajni ključevi moraju ostati na serveru, u promenljivim okruženja ili tajnama.
  • Lepljenje ključeva u chat. Istorija chata može biti sačuvana. Umesto toga koristite funkciju tajni vašeg alata, a svaki ključ koji ste izložili zamenite novim.
  • Pretpostavka da je API besplatan. Mnogi API-ji naplaćuju po zahtevu ili po jedinici korišćenja — AI API-ji naplaćuju po tokenima. Proverite cene i postavite ograničenja potrošnje. Pogledajte kako koristiti LLM API-je.
  • Nerukovanje greškama. Spoljni servisi padnu, isteknu im rokovi i dostignu ograničenja. Tražite razumne poruke o greškama i ponavljanje pokušaja.
  • Verovanje pregledaču. Vaš sopstveni API mora sam da proverava dozvole. Sakrivanje dugmeta ne sprečava nekoga da pozove krajnju tačku direktno.
  • Korišćenje živih ključeva u testiranju. Koristite ključeve test režima dok ne budete spremni za lansiranje.

Šta tražiti od AI alata

  • „Koje spoljne API-je ova aplikacija koristi i koliko svaki košta?”
  • „Pozivaj API za plaćanja samo sa servera. Čitaj ključ iz promenljive okruženja.”
  • „Navedi svaku krajnju tačku u našem API-ju, šta radi i ko sme da je poziva.”
  • „Proveri na serveru da ulogovani korisnik poseduje rezervaciju pre nego što je izmeniš ili obrišeš.”
  • „Ako API za email ne uspe, ipak sačuvaj rezervaciju i zabeleži grešku.”
  • „Za sada koristi test režim provajdera.”

API-ji u Mythex-u

Mythex može da napravi sopstveni API — kao deo web aplikacije ili kao zaseban backend u Node-u, Python-u (FastAPI), C#-u ili Java-i koji radi uz vaš frontend — i da napiše kod koji poziva spoljne servise. API ključeve dodajete kao tajne projekta, a ne u chat, i aplikacija ih koristi u pregledu i nakon objavljivanja. Dokumentacija ima recepte za integraciju bilo kog API-ja i izgradnju REST API backend-a.

Pitanja

Šta je API jednostavno rečeno?

API (application programming interface) je definisan način na koji jedan softver traži od drugog podatke ili da nešto uradi. Vaša aplikacija šalje zahtev u dogovorenom formatu, a drugi sistem vraća odgovor — na primer vremensku prognozu, rezultat plaćanja ili AI generisan odgovor.

Šta je REST API?

REST API je čest stil veb API-ja u kome svaka vrsta stvari (rezervacije, klijenti) ima svoju URL adresu, a koristite standardne HTTP metode — GET za čitanje, POST za kreiranje, PUT ili PATCH za izmenu, DELETE za brisanje. Podaci se obično vraćaju kao JSON.

Šta je API ključ i gde ga čuvati?

API ključ je tajna niska koja identifikuje vašu aplikaciju kod nekog servisa i često joj omogućava da troši novac ili pristupa podacima. Čuvajte ga u promenljivim okruženja ili u tajnama projekta na serveru, nikad u kodu koji se izvršava u pregledaču i nikad u javnom repozitorijumu.

Koja je razlika između API-ja i webhook-a?

Kod API-ja vaša aplikacija traži nešto od drugog servisa kada to želi. Kod webhook-a drugi servis poziva vašu aplikaciju kada se nešto desi — na primer, provajder plaćanja vas obaveštava da je plaćanje uspelo.

Mythex · Pricing · Pravite bilo šta uz AI · Šabloni za sajtove i aplikacije · Mythex u poređenju · Rečnik pojmova za pravljenje aplikacija uz AI · Besplatni alati za pravljenje aplikacija uz AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)