Kalkülatör
Bu saýtdaky her bir hasapçy azat JSON API. Hiç bir ýazgy, API açary, CORS-y mümkin edýän - ony serweriňizden ýa-da böwzeriňizden aňsatça çagyryň.
_Gözleg
API web saýtda ulanan matematikiň aňsat bir görnüşini işledýär. Kalkülatöriň meýdany mykdarlaryny soraglar parametri ýa-da JSON hökmünde iber we hasaplanan netijeleri JSON ýaly al — her hili amortizasiýa plany ýa-da grafiki maglumatlaryň içinde.
- 198+ Kalkülatörler, her biri öz soň noktasy bilen
- API adyny goramak başartmady — anonim erişmek, IP bilen çäklendirilen
- CORS —
Access-Control-Allow-Origin: *(ulanyşa laýyk klanç tarapy) - _Gün: 60 IP üçin sagatda soraglar (HTTP 429 eger gaçsa)
- Hatalar boşdur — diňe bir başarnykly (2xx) jogap siziň aýlyk kvotaňyzdan bir jaňy ulanýar. Her 400, 401, 404, 429 we 500 size hiç zat tölemeýär.
_Daşyn URL:
https://calculator.free/api/v1/
Indeks — her bir hasapçyny görkez
GET https://calculator.free/api/v1/
Bir maşyn okaýjy ähli hasapçylaryň sanawyny her biriniň meýdançalary (açar, etiket, tür, öň bellenen, birlik) we netije açarlary bilen gaýtarýar - bir kliýent dinamiki bina etmek üçin ýeterlik. Her bir meýdança bir zerur baglançy hem göterýär - öň bellenen bir zat bolmadyk az meýdançalar üçin aşikar (datumlar, köplenç). Olary iber: bir näçe hasapçy birini düşünip biler, galanlary 400 jogap berer.
Hasaplama — bir hasaplamany işlet
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Jawa şekili:
{
"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"]
}
Ýurduň-aňly hasapçylaryň (hypoteka, karz, girdeji-salgy, satyş-salgy...) kabul et ?country=us|uk|ca|au|in|ie|nz|za. Namazly slug 404 gaýtarýar; goldamaýan ýurt ýa-da erbet girdeji 400 kömekçi bir isleg bilen we meýdan specifikasiýasy bilen gaýtarýar.
Parametrler, öň bellenenler we hatalar
Diňe öziňize gerek bolan meýdançalary iberiň. Göçürmäňizi goýberýän her bir zat o meýdançanyň çap edilen öň bellenen bilen doldurylýar - şol bir mykdary kalkulýator sahypasy öň doldurýar, şundan API we web saýty her wagt şol bir girdeji üçin şol bir sanlary gaýtarýar. Her bir jogap içinde doldurylan zatlary görkezýär defaults_applied.
API çözmek üçin başarmaýan her bir zat hatadyr, hiç wagt süzüm däl: bir hataly parametr, ýalňyş tipdäki bir meňzeş, bir bilmedik düşen sanaw opsiýa, ýa-da bir eksik meýdançaň öň bellenen zat däl (datum meýdançalar — doglan günüň bellenmesi mümkin däl). Her 400-dan bir parametr öçür we bütin meýdançaň specifikasiýasyny eşikledi, şonuň üçin bir klanç özini düzedip biler.
$ 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": [ ... ]
}
| hata | HTTP | _Wagt |
|---|---|---|
unknown_parameter | 400 | bir parametr bu hasapçynyň bir meýdançasy däl (bir siz-aýal- |
invalid_value | 400 | bir san meýdançasy ol san däl, onuň saýlawlaryndan daşda bir düşen mykdar, pars edilip bilmeýän bir taryh ýa-da namalar _mode |
missing_parameter | 400 | kalkulýator netije çykarmady sebäbi bir meýdan öň bellenen bolmadyk bozuldy |
unsupported_country | 400 | ?country= bu kalkulýatoryň maglumaty bar bir zat däl |
bad_json | 400 | POST bedeni dogry JSON däl |
unknown_calculator | 404 | oňki bilen hiç bir hasapçy ýok |
invalid_key | 401 | API adyny ibermek islendi emma ol namydar ýa-da hereketsiz |
rate_limited / quota_exceeded | 429 | anonim sagat IP çäklendirmesi, ýa-da açaryň aýlyk kvotasy, ulanyldy |
too_many_invalid_requests | 429 | bu açar üçin bir sagat içinde birçok ret edilen soraglar bar - ret edilen jaňlar boşdur, şonuň üçin olar meňzeşlik bilen çäklendirildi. her sagatda täzelenýär; başaran jaňlar hiç wagt oňa goşulmaz. |
_Gün /api/v1/ index her bir meýdançanyň adyny, görnüşini, birligini, öň bellenenini we zerurmydygyny çap edýär - hiç haçan hasap etmeýän bir klançyny gurmak üçin ýeterlik.
Tanyşdyryş
API'yi açarsyz çagyryp bilersiň - anonim soraglar IP bilen çäklendirilýär. Beýik, öňe görlen aýlyk kvota (we kommersiýal ulanmak) üçin, hasabyň sahypasynda bir açar döredip üç usuldan birini iber:
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"
- _Boş — anonim (IP tizligi çäkli) ýa-da az aýlyk kvotaly azat açar. Tizlik däl.
- Developer — 10,000 çagyryş/aýda, söwda ulanmak.
- İş — 100,000 çagyryş/aýda, öňdebaryjy geçirijilik.
Siziň kotawyňyza näçe saýlanmaly
Diňe bir başaran jogap etmeli. Bir 2xx = bir çagyryş. Her hata azat: 400 bir hataly emlemeli parametr, ýalňyş umumy ýa-da gerekli meýdany ýok üçin, 404 bir bilmezlik slug üçin, 401 bir ýalňyş açar üçin, 429, we bizden bir zat ýalňyş gidýän her zat üçin. Kontrakty barla we islegiňizi gerek bolşy ýaly düzeltin - siz jogaplar üçin töleg alýarsyňyz, düzeltmek üçin däl.
Hatalar boş bolansoň olar çaltlyk bilen çäklendirilýär: eger bir baglanç ondan köp hata döredýän bolsa 200 eger bir sagat içinde jogaplary ret etse, sagat geçýänçä HTTP 429 "too_many_invalid_requests" alar. Başgaşly çagyryşlar hiç wagt buňa goşulmaz, şonuň üçin işleýän birikme hiç wagt ony görmez - ol diňe bir ulanyjyny ýene bir synanyşda gaplaşan bir döwre atar.
Bir alyçyň aýlyk kwotasy ulanylanda API HTTP 429'y "quota_exceeded" hatasy bilen gaýtarýar; namazly ýa-da hereketsiz alyç HTTP 401'y gaýtarýar. _Gün tertibini gör _Sat sahypa.
Mysal
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}'
Ehli _Sähbitler
Her bir hasapçy üçin bir sonuk noktasy. Her biriniň meýdan atlyklary we netije atlyklary şunda /api/v1/ indeks.
Maliýe (41)
_Gün (2)
Saglyk we Fitnes (28)
_Täze (26)
Stats (15)
Birlik Üýtgekleri (17)
Ilm we inženerçilik (27)
Taryh we Zaman (15)
Her gün (27)
Netijeler diňe umumy ýardam üçin hasaplanypdyr, maliýe, lukmançylyk ýa-da salgyt maslahaty üçin däl.