Àwọn Ìṣàmúlò-ètò Ìṣàmúlò-ètò
Gbogbo àwọn kálẹ́ndà nínú ojú-ìwé yìí ní API JSON ọ̀fẹ̀. Kò si àgbèwọlé, kò si àwọn bọ́tìnì API, CORS-ìgbàyélú - pè o ní láti inú sáà rẹ̀ tàbí láti inú àwàn.
Àwọn Àkọ́gbègbè
API ná ìṣàmúlò-ètò àwọn à
- 198+ calculators, gbogbo wọn ní àwọn ààyè ìparí iṣẹ́ wọn
- Kò ní bọ́tìnì API — Àwọn ààyè-iṣẹ́
- CORS —
Access-Control-Allow-Origin: *(Ìgúnrégé-àriń-àti) - Àwọn ìkúndùǹ: 60 ibeere/aago fun IP kan (HTTP 429 tí a bá fi pẹ̀lú)
- Àwọn àṣìṣe ní ìfẹ̀sì — Àwọn àgbékalẹ̀ tí a tí ṣẹ́dá (2xx) nínú ló n ló ayẹyẹ̀ kan láti inú àwọn
URL Ìdájútó
https://calculator.free/api/v1/
Àtòjọ-ẹ̀yàn - àtòjọ àwọn ìṣàmúlò-ètò gbogbo
GET https://calculator.free/api/v1/
Ń pàtó àtòjọ àwọn ìṣàmúlò-ètò ìṣàmúlò-ètò tí a lè ka nípa àwọn ààyè-iṣẹ́ (bọ́tìnì, àmì-ìwé, irúfẹ́, ìpèwọ̀n, òkè) àti àwọn bọ́tìnì ìrísí-lẹ́tà - tójú láti ṣí klìǹtì nípa ìṣàfarawé. Ààyè fún gbogbo wọn ní àwọn fálìlì tí a fẹ́ - òótọ́ fún àwọn ààyè kékeré tí kò ní ìpéwọ̀n (àwọn àwọn ààyè, nípa ìpéwọ̀n). Fi àwọn náà ranṣẹ: àwọn káàdíẹ̀lì mejì lè gba àwọn à
Ìṣàmúlò-ètò - rọ́ọ̀nù àwọn ìṣàmúlò-ètò kan
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Àwọn ìṣàmúlò-ètò
{
"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"]
}
Àwọn ìṣàmúlò-ètò tí a mọ̀ nípa àwọn orilẹ́ẹ̀tì (ìpàdé, ìfìdá, àwọn owó-ìtàn, àwọn owó-ìtán...) gba ?country=us|uk|ca|au|in|ie|nz|za. Slug tí a kò mọ̀ láti pán 404; orilẹ́ẹ̀tì tí a kò bá jẹ́ ìṣàmúlò-ètò àìdárà àti àwọn ìṣàmúlò-ètò tí a kò mọ̀ láti pán 400 láti pán àìdárà àti àwọn ààyè-ètò.
Àwọn ìkúndùǹ, àwọn ìpéwọ̀n àti àwọn ìṣàmúlò-ètò
Fi àwọn ààyè tí o fẹ́ lọ́wọ́lọ́wọ́. Gbogbo àwọn ààyè tí o fi kù ní pàtó nípa àwọn ààyè àìṣàmúlò-ètò àìfihàn tí a fi pamọ́ - àwọn fálù tí ojú-ìwé ìṣàmúlò-ètò náà fi pàtó, láti jẹ́ pé API náà àti ojú-ìwé náà ní gbogbo àkóónú gba àwọn ààyè náà padà sípò fun àwọn ààyè náà. Àwọn àwọn defaults_applied.
Àwọn ohunkohun tí API kò lè ṣẹ́dá nípa ìṣàfarawé nípa ìṣàfarawé, kò ní séẹ̀: àwọn ààtò àìṣàfilọ́lẹ̀ tí a tí kọ́, àwọn fálù àwọn irúfẹ́ tí a kò mọ̀, àwọn
$ 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": [ ... ]
}
| Àṣìṣe | HTTP | Tí |
|---|---|---|
unknown_parameter | 400 | àwọn ààtòjútó tí kò jẹ́ ààyè-iṣẹ́ tí a lò fún ìṣàmúlò-ètò yìí (ní àwọn ààtòjútó tí o fẹ́) |
invalid_value | 400 | ààyè àwọn à |
missing_parameter | 400 | Àwọn ìṣàmúlò-ètò kò ṣẹ̀dà àwọn àwọn ìṣàmúlò-ètò nitorí ààyè-iṣẹ́ tí kò ní ìṣàmúlò-ètò tí a fi pàdé |
unsupported_country | 400 | ?country= kò jẹ́ ọkan tí àṣàfilọ́lẹ̀ yìí ní àwọn ààtòjútó fun |
bad_json | 400 | Àwọn àwọn ààyè-iṣẹ́ POST kò jẹ́ JSON ìṣàmúlò-ètò |
unknown_calculator | 404 | kò ní kọnputà kan nínú slug náà |
invalid_key | 401 | Àwọn àwọn |
rate_limited / quota_exceeded | 429 | Ìgbà ìdájú IP àìpẹ̀ àìnọ́bà, tàbí àwọn ìṣàmúlò-ètò àìpẹ̀ àìsẹ́, tí a lò |
too_many_invalid_requests | 429 | Àwọn ìṣàmúlò-ètò tí a tí ìgbà gbọ́ nínú àkójú àkójú fún bọ́tìnì yìí - àwọn ìsàlẹ̀-ètò tí a tí ìgbà gbọ́ ní àwọn àwọn àgbèwọlé, láti jẹ́ pé a tí wọn gbọ́ nínú àwọn à |
Àwọn /api/v1/ Àtòjọ-ẹ̀yàn náà ń fi bọ́tìnì ààyè-iṣẹ́, irúfẹ́, òkè, ìpèwọ̀n àti àwọn àwọn ààyè-iṣẹ́ gbogbó wọn pamọ́.
Àwọn àwọn ìṣàmúlò-ètò ìṣàfarawé
O lè pé API láti àwọn bọ́tìnì àti àwọn ìṣàmúlò-ètò àìdálẹ̀ - àwọn ìtàn àìdálẹ̀ ní àwọn ìṣàmúlò-ètò àìdálẹ̀ nípa IP. Fún àwọn ààtò àìdálẹ̀ òkè, àwọn ààtò òjó (ati ìlò àìdálẹ̀) kọ́ bọ́tìnì ní pàtó ojú-ìwé àwọn àwọn kọ́ọ̀kan rẹ̀, ki o si fi ò kù ní àwọn ìṣàmúlò-ètò mẹ́tà:
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"
- Àìfẹ́ — àìdájú (IP tí a fi àwọn ìṣàmúlò-ètò pamọ́) tàbí bọ́tìnì ọ̀fẹ́ láti inú àwọn
- Àwọn Àkóónú — 10,000 awọn ipe/oṣu, lilo iṣowo.
- Àwọn iṣẹ́ — 100,000 ipe/oṣu, ifasilẹ-iṣaaju-iṣaaju.
Àwọn àwọn
Àwọn àgbèwọlé tí a tí ìṣẹ́dá nínú rẹ̀ nínú. 2xx kan = ipe kan. Àwọn àwọn àṣiṣe ní gbogbo wọn ní ọ̀fẹ́: 400 fún àwọn àparámetrù àìdálẹ̀, fálù aládájú àti ààyè tí a fẹ́ tí kò bá jẹ́, 404 fún àwọn à
Nítorí àwọn ìṣàmúlò-ètò jẹ́ ọ̀fẹ̀, wọ́n ní àwọn ìṣàmúlò-ètò tí a fi gbàjútó nípa: tí bọ́tìnì kan bá jẹ́ ìṣàmúlò-ètò tí o jú 200 tí o bá fi àwọn àwọn ìṣàfihàn tí a tí ìpàdá nínú àkókó kan, ó gba HTTP 429 "too_many_invalid_requests" titi ti àkókó náà fi bá. Àwọn awájú àwọn awájú kò ní ìṣàfihàn nínú àwọn awájú, bẹ́ẹ̀ nínú ìdáráwọ́lú tí n ṣiṣẹ́ kò ní ìyàn - ò ní ìjádé kan nínú àwọn klìentì tí a tí ìpàdá nínú àwọn àwọn ìṣàfihàn tí a tí ńpá.
Tó bá jẹ́ pé àwọn àwọn ìṣàmúlò-ètò oṣù bọ́tìnì náà tí a lò, API náà ń fi HTTP 429 sí àwọn àṣìṣe "quote_exceeded"; bọ́tìnì àìdárà tàbí àìdárà kò ní ìṣàmúlò-ètò náà ń fi HTTP 401 sí. Wó àwọn Àwọn Ìṣàmúlò-ètò ojú-ìwé.
Àwọn Ààtòjọ-ẹ̀yàn
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}'
Àwọn ààtò ìparí
Ààyè ìparí kan fún àwọn ìṣàmúlò-ètò. Àwọn bọ́tìnì ààyè àti àwọn bọ́tìnì àwọn ìrísí-lẹ́tà fún gbogbo wọn nínú /api/v1/ Àtòjọ-ẹ̀yàn.
Àwọn Ìpamọ́ (41)
Àwọn Ìṣàmúlò-ètò (2)
| Àwọn Ìṣàmúlò-ètò | Àwọn Ààyè Ìjánu-ìsún |
|---|---|
| Àwọn Àwọn Àkọ́lé | /api/v1/income-tax/ |
| Àwọn Ìṣàmúlò-ètò | /api/v1/sales-tax/ |
Àwọn Ìṣàmúlò-ètò (28)
Àwọn Ìṣàmúlò-ètò (26)
Àwọn Ìtàn (15)
Àwọn Àgbègbè Ìgúnrégé (17)
Àwọn Ìṣàmúlò-ètò (27)
Àwọn Àkọ́lé (15)
Àwọn àkọlé (27)
Àwọn àwọn