Free Calculator API
Svaki kalkulator na ovoj stranici je također i besplatni JSON API. Nema registracije, nema API ključa, CORS-podržan - poziva se sa vašeg servera ili direktno iz preglednika.
Pregled
API izvodi tačno istu matematiku koju koristi web stranica. Pošaljite vrijednosti polja kalkulatora kao parametre upita ili JSON i dobijte izračunate rezultate kao JSON — uključujući bilo koji amortizacijski raspored ili podatke grafikona koje kalkulator proizvodi.
- 198+ kalkulatori, svaki sa svojom krajnjom tačkom
- Nema API ključa — anonimni pristup, brzina ograničena IP-om
- CORS —
Access-Control-Allow-Origin: *(korisna strana klijenta) - Ograničenje brzine: 60 zahtjevi/sat po IP-u (HTTP 429 kada se prekorači)
- Greške su slobodne — samo uspješan (2xx) odgovor koristi jedan poziv iz vaše mjesečne kvote. Svaki 400, 401, 404, 429 i 500 vas ne košta ništa.
Osnovni URL
https://calculator.free/api/v1/
Indeks — popis svih kalkulatora
GET https://calculator.free/api/v1/
Vraća mašinski čitljiv spisak svih kalkulatora sa svakim od polja (ključ, oznaka, tip, default, jedinica) i ključevima rezultata - dovoljno za dinamično izgradnju klijenta. Svako polje također nosi obaveznu zastavicu - istinitu za nekoliko polja koja nemaju standardnu vrijednost (datumi, uglavnom). Pošalji ih: par kalkulatora može zaključiti jednu, ostali odgovaraju 400 bez nje.
Izračunaj — pokreni jedan kalkulator
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Oblik odgovora:
{
"ok": true,
"slug": "mortgage",
"country": "us",
"inputs": { ... the values actually computed with ... },
"results": { ... computed result keys ... },
"schedule": { "columns": [...], "rows": [...] } | null,
"chart": { "type": "pie", "slices": [...] } | null,
"defaults_applied": ["tax", "insurance"]
}
Kalkulatori za pojedine zemlje (hipoteka, kredit, porez na dohodak, porez na prodaju...) prihvaćaju ?country=us|uk|ca|au|in|ie|nz|za. Nepoznata slug vraća 404; nepoduprta zemlja ili pogrešan ulaz vraća 400 sa korisnom porukom i specifikacijom polja.
Parametri, uobičajene vrijednosti i greške
Pošalji samo polja koja su važna. Sve što izostavite popunjava se objavljenom zadanom vrijednošću tog polja - istom vrijednošću koju stranica kalkulatora prethodno popunjava, tako da API i web stranica uvijek vraćaju iste brojeve za iste unose. Svaki odgovor navodi što je popunjeno ispod defaults_applied.
Sve što API ne može iskreno riješiti je greška, nikad nula: pogrešno napisani parametar, vrijednost pogrešnog tipa, nepoznata opcija padajućeg izbornika, ili polje koje nedostaje koje nema standardno (polja datuma - datum rođenja se ne može pogoditi). Svakih 400 naziva uvredljivi parametar i ponavlja cijelu specifikaciju polja tako da klijent može ispraviti sam sebe.
$ curl "https://calculator.free/api/v1/mortgage/?price=350000&rate=6.5&term=30"
{
"ok": false,
"error": "unknown_parameter",
"message": "Unknown parameter 'term' for calculator 'mortgage'. Did you mean 'years'? ...",
"unknown_parameters": ["term"],
"did_you_mean": { "term": "years" },
"valid_parameters": ["down", "extra", "extra_onetime", "extra_yearly", "hoa",
"insurance", "other", "pmi", "price", "rate", "tax", "years"],
"fields": [ ... ]
}
| greška | HTTP | Kada |
|---|---|---|
unknown_parameter | 400 | parametar koji nije polje ovog kalkulatora (sa sugestijom "da li ste mislili") |
invalid_value | 400 | polje sa brojevima koje nije broj, paduća vrijednost izvan njegovih opcija, datum koji se ne može analizirati, ili nepoznat _mode |
missing_parameter | 400 | kalkulator nije proizveo nikakav rezultat jer je polje bez zadanog stanja ostavljeno prazno |
unsupported_country | 400 | ?country= nije jedna od onih za koje ovaj kalkulator ima podatke |
bad_json | 400 | POST tijelo nije važeće JSON |
unknown_calculator | 404 | Nema kalkulatora sa tim pužom. |
invalid_key | 401 | API ključ je poslan ali je nepoznat ili neaktivan |
rate_limited / quota_exceeded | 429 | anonimno satno IP ograničenje, ili mjesečna kvota ključa, je iskorišteno |
too_many_invalid_requests | 429 | previše odbijenih zahtjeva u sat vremena za ovaj ključ - odbijeni pozivi su besplatni, tako da su umjesto toga ograničeni brzinom. Resetira se svaki sat; uspješni pozivi se nikad ne računaju. |
-Ne. /api/v1/ index objavljuje ključ svakog polja, tip, jedinicu, default i da li je potrebno - dovoljno da se izgradi klijent koji nikad ne pogađa.
Autentifikacija
Možete pozvati API bez ključa uopće - anonimni zahtjevi su ograničeni brzinom IP-a. Za veću, predvidljivu mjesečnu kvotu (i komercijalnu upotrebu), napravite ključ na stranici vašeg računa i pošaljite ga na jedan od tri načina:
GET https://calculator.free/api/v1/mortgage/?price=350000&key=YOUR_KEY
curl -H "Authorization: Bearer YOUR_KEY" "https://calculator.free/api/v1/bmi/?units=metric&height=180&weight=80"
curl -H "X-Api-Key: YOUR_KEY" "https://calculator.free/api/v1/bmi/?units=metric&height=180&weight=80"
- Slobodan — anonimno (IP ograničeno brzinom) ili besplatni ključ sa malom mjesečnom kvotom. Nekomercijalno.
- Programer — $9/mo — 10.000 poziva mjesečno, komercijalna upotreba.
- Poslovni — $49/mo — 100.000 poziva mjesečno, prioritetni protok.
Što se računa u tvoju kvotu
Samo uspješan odgovor je dovoljan. Jedan 2xx = jedan poziv. Svaka greška je besplatna: 400 za pogrešno napisani parametar, lošu vrijednost ili nedostajuće obavezno polje, 404 za nepoznatu slug, 401 za lošu ključ, 429, i sve što ide po zlu na našoj strani. Istražite ugovor i popravite svoj zahtjev koliko puta trebate - naplaćuju vam se odgovori, a ne ispravci.
Pošto su greške slobodne, one su ograničene brzinom: ako jedan ključ izaziva više od 200 ako je odbio odgovore u sat vremena, dobije HTTP 429 "too_many_invalid_requests" dok sat ne prođe. Uspješni pozivi se ne računaju u to, tako da funkcionalna integracija neće nikad vidjeti to — samo uhvati klijenta zaglavljenog u petlji ponovnih pokušaja.
Kada se ispuni mjesečna kvota ključa, API vraća HTTP 429 sa greškom "quota_exceeded"; nepoznati ili neaktivni ključ vraća HTTP 401. Pogledajte sve planove i prijavite se na Cijena Stranica.
Primjeri
curl
curl "https://calculator.free/api/v1/mortgage/?price=350000&down=70000&rate=6.9&years=30"
JavaScript fetch()
const r = await fetch(
"https://calculator.free/api/v1/bmi/?" + new URLSearchParams({
units: "metric", height: "180", weight: "80"
}));
const { results } = await r.json();
console.log(results.bmi, results.category);
Python
import requests
r = requests.get("https://calculator.free/api/v1/mortgage/",
params={"price": 350000, "down": 70000,
"rate": 6.9, "years": 30},
headers={"Authorization": "Bearer YOUR_KEY"})
print(r.json()["results"])
POST JSON
curl -X POST "https://calculator.free/api/v1/income-tax/?country=uk" \
-H "Content-Type: application/json" \
-d '{"income": 60000}'
Sve krajnje tačke
Jedna krajnja tačka po kalkulatoru. Ključevi polja i rezultata za svaki su u /api/v1/ indeks.
Financije (41)
Porez i plaća (2)
| Kalkulator | Krajnja tačka |
|---|---|
| Kalkulator poreza na dohodak | /api/v1/income-tax/ |
| Porez na prodaju i PDV kalkulator | /api/v1/sales-tax/ |
Zdravlje i fitness (28)
Tip (26)
Statistika (15)
Pretvornik jedinica (17)
Nauka i inženjerstvo (27)
Datum i vrijeme (15)
Svaki dan (27)
Rezultati su procjene samo za opće smjernice, a ne financijski, medicinski ili porezni savjeti.