Sakrekenaar
Elke sakrekenaar op hierdie terrein is ook 'n vry JSON API. Geen teken-up, geen API sleutel, KORS-abled takiesd takieser dit van jou bediener of direk van die blaaier.
Oorsig
Die API loop presies dieselfde wiskunde wat die webwerf gebruik. Stuur 'n sakrekenaar se veldwaardes as navraag parameters of JSON en kry die berekende resultate terug as JSON ← insluitend enige aortisering skedule of kaart data wat die sakrekenaar vervaardig.
- 198+ sakrekenaars, elk met sy eie punt
- Geen API-sleutel nie — anonieme toegang, tempo-verwag deur IP
- CORS —
Access-Control-Allow-Origin: *(bruikbaare kliënt-side) - Spoed:: 60 versoeke/hour per IP (HTTP 429 wanneer oorskry)
- Foute is vry — Slegs'n suksesvolle antwoord (xx) gebruik een oproep van jou maandelikse kwota. Elke 400, 401 404 479 en 500 kos jou niks nie.
Basis URL
https://calculator.free/api/v1/
Indeks eenmaalLOX lys elke sakrekenaar
GET https://calculator.free/api/v1/
Gee terug 'n masjienleesbare lys van alle sakrekenaars met elke een se velde (sleutel, etiket, tipe, verstek, eenheid) en resultaat sleutels Jesaja genoeg om 'n kliënt inamiese te bou. Elke veld het ook'n vereiste vlag rdius as waar vir die paar velde wat geen verstek (datums, meestal) het nie. Stuur dit:'n paar sakrekenaars kan een infer, die res antwoord 400 daarsonder.
Compute jacter loop een sakrekenaar
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Reaksie vorm:
{
"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"]
}
Land- aware sakrekenaars (mortgage, lening, inkomste-tax, verkoop-tax...) aanvaar ?country=us|uk|ca|au|in|ie|nz|za. Onbekende slug gee terug 404; nie ondersteunde land of slegte invoer gee terug 400 met 'n nuttige boodskap en die veld se spek.
Parameters, versteke en foute
Stuur slegs die velde waaroor jy besorg is. Enigiets wat jy verlaat is gevul met daardie veld se gepubliseerde verstek 0°) dieselfde waarde die sakrekenaar bladsy voor- opvul, sodat die API en die webwerf altyd dieselfde nommers vir dieselfde invoere teruggee. Elke antwoord gee 'n lys van wat dit gevul het onder defaults_applied.
Enigiets wat die API nie eerlik kan oplos nie, is 'n fout, nooit 'n nul nie:' n verkeerd gespelde parameter, 'n waarde van die verkeerde tipe, 'n onbekende afvaldow opsie, of' n verlore veld wat geen verstek het nie (die datum à ̄ng à ̄ng 'n geboortedatum kan nie geraai word). Elke 400 name die aanstoot parameter en eggo van die volledige veld se spak sodat 'n kliënt homself kan regstel.
$ 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": [ ... ]
}
| fout | HTTP | Wanneer |
|---|---|---|
unknown_parameter | 400 | 'n parameter wat nie' n veld van hierdie sakrekenaar is nie (met' n e- pos voorstel) |
invalid_value | 400 | 'n aantal veld wat nie 'n getal is nie, 'n afvalswaarde buite sy opsies, 'n onparsebare datum of 'n onbekende _mode |
missing_parameter | 400 | sakrekenaar het geen resultaat gelewer nie omdat 'n veld met geen verstek leeg gelaat is |
unsupported_country | 400 | ?cory= is nie een hierdie sakrekenaar het data vir |
bad_json | 400 | die POS-liggaam is nie geldige JSON nie |
unknown_calculator | 404 | geen sakrekenaar met daardie sagheid nie |
invalid_key | 401 | 'n API-sleutel is gestuur, maar is onbekend of onaktief |
rate_limited / quota_exceeded | 429 | die anonieme uurlik IP-grens, of 'n sleutel se maandelikse kwota, word gebruik |
too_many_invalid_requests | 429 | te veel verwerp versoeke in een uur vir hierdie sleutel netwerk oproepe word vry, sodat hulle word tempo-vereenvoudig in plaas van. Herstel uurlik, suksesvolle oproepe nooit tel na dit. |
Die /api/v1/ indeks publiseer elke veld se sleutel, tipe, eenheid, verstek en of dit nodig is takies wat nooit raai nie.
Geldigheidsverklaring & planne
Jy kan die API bel sonder 'n sleutel by alle vandaan kom anonieme versoeke word gegradeer deur IP. Vir' n hoër, voorspelbare maandelikse kwota (en kommersiële gebruik), skep 'n sleutel op jou rekening bladsy en stuur dit een van drie maniere:
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"
- Beskikbaar — anoniem (IP tempo-verwag) of 'n vrye sleutel met' n klein maandelikse kwota. Nie- kommersiale.
- ontwikkelaar &madash; $9/m — 10 000 oproepe/month, kommersiële gebruik.
- Besigheid &madash; R129/m — 100 000 oproepe/month, prioriteit deurpag.
Wat tel teen jou kwota
Slegs 'n suksesvolle antwoord doen. Een 2xx = een roep. Elke fout is vry:' n 400 vir 'n verkeerd gespelde parameter, 'n slegte waarde of' n ontbrekende vereiste veld, 'n 404 vir' n onbekende slx = een roep. 'n 401 vir' n slegte sleutel, 'n 429, en enigiets wat verkeerd loop aan ons kant. Ontdek die kontrak en maak jou versoek reg soveel keer as wat jy benodig fic jy word vir antwoorde, nie vir regstellings nie.
Omdat foute vry is hulle word diÃa-limited in plaas van: as een sleutel veroorsaak meer as 200 Verwerpte reaksies in 'n uur, kry dit HTTP 429 "te_Baie_ongeldige_reques" tot die uur rolle oor. Suksesvolle oproepe is nooit daarop te tel nie, sodat 'n werk integrasie sal nooit sien dit ← slegs vang' n kliënt wat in 'n weer lus vasgevang is nie.
Wanneer 'n sleutel se maandelikse kwota gebruik word begin die API gee terug HTTP 49: met fout "quota_ exceed";' n onbekende of onaktiewe sleutel gee terug HTTP 401. Sien volle planne en teken op Comment bladsy.
Voorbeelde
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}'
Alle puntpunte
Een punt gestel per sakrekenaar. Veldsleutels en resultaat sleutels vir elk is in die /api/v1/ indeks.
FinansiÃ"le (41)
Belasting Salary (2)
| Sakrekenaar | Einde punt: |
|---|---|
| Inkomme-terimatuur | /api/v1/income-tax/ |
| Verkop belasting & VAT Sakrekenaar | /api/v1/sales-tax/ |
Gesondheid & Fitheid (28)
Wiskunde (26)
Statistiek (15)
Eenheid omskakels (17)
Wetenskap en Ingenieurs (27)
Datum & Tyd (15)
Elke dag (27)
Die resultate is skattings van algemene leiding, nie net finansiële, mediese of belastingvoorligting nie.