Calculator API
Calculator ọ bụla na saịtị a bụ free JSON API. Ọ dịghị ntinye aka, ọ dịghị API key, CORS-enabled - kpọọ ya site na sava gị ma ọ bụ n'ụzọ ziri ezi site na brauzer.
Nlekọta
API na-agbagharị n'ihe nlereanya nke webụsaịtị ahụ na-eji. Ziga valiu ebe nke kalkulata dịka paramita nchọgharị mọọbụ JSON ma nweta nsonaazụ a na-enyocha n'ihu dịka JSON - gụnyere ọbụla ntọala n'ụdị ntọala mọọbụ data cháà nke kalkulata na-emepụta.
- 198+ calculators, otu ọbụla na-enwe ebemkpofuozi ya
- Enweghị kii API — anọnimị nbanye, n'ihe ogugu-n'ihi IP
- CORS —
Access-Control-Allow-Origin: *(Nhazi ndịna-ejighị n'aka) - Oge nkwụsị: 60 ajụjụ/ụbọchị IP ọbụla (HTTP 429 mgbe e mepere)
- Ndehie ndị ahụ bụ nke n'efu — Ọbụna n'ihi na a na-abịarute (2xx) nzaghachi na-eji otu oku site na ọnwa gị. 400, 401, 404, 429 na 500 niile na-efu gị ihe ọ bụla.
URL nke okpuru
https://calculator.free/api/v1/
Indentị - ndesịta nke calculator niile
GET https://calculator.free/api/v1/
Na-eziga ndesịta nke na-agụgharị manụnụ nke ndịna-ekwere niile na mpaghara ebe nke ọbụla (kii, léèbụ̀, ụdị, dìfọ́ọ̀ltụ̀, ünitị) na kii nsonaazụ - nke dị n'ozuzu iji mepụta kliịntị n'ụzọ dínámātik̀. Ebe ọbụla na-eburukwa flagu achọrọ - eziokwu maka ebe ndị dị obere nke enweghị difọ́ọ̀ltụ̀ (ụbọchị, n'ozuzu ya). Ziga ha: ụfọdụ calculators nwere ike ịkọwa otu, ndị ọzọ na-aza 400 na-enweghị ya.
Kpọmkwem - rụọ ọrụ otu kalkulata
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Ụdị nzaghachi:
{
"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"]
}
Nabata ndị na-enyocha mba (mọrtagaịz, nkwụ, inweta-táàbụ̀, ahịa-táàbụ̀...) ?country=us|uk|ca|au|in|ie|nz|za. Slug a na-amaghị ama na-ezigaghachi 404; mba a na-ezere ma ọ bụ n'imegharị ahụ na-ezigaghachi 400 na ozi ndị bara uru na mpaghara ebe ahụ.
Parameta, difọ́ọ̀ltụ̀ na ndehie
Ziga naanị ebe ị na-elekọta. Ihe ọbụla ị na-ewepụ n'ime bụ nke a na-adọta na ebe ahụ difọ́ọ̀ltụ̀ - uru nke ọbụla nke ihuakwụkwọ kalkulata ahụ na-edebe, ya mere API na webụsaịtị na-eziga mgbe niile ọnụọgụgụ nke ọbụla maka n'imegharị ndị ahụ. Ndesịta nke ihe ọbụla ọ na-edebe n'okpuru defaults_applied.
Ihe ọbụla API na-agaghị arụ ọrụ n'ụzọ ziri ezi bụ ndehie, ọ bụghị seọro: parameter a na-asụgharịghị n'ụzọ ziri ezi, valiu nke ụdị na-ezighị ezi, nhọrọ dropdown a na-amaghị, mọọbụ mpaghara ebe ehichapụ nke enweghị difọ́ọ̀ltụ̀ (ụbọchị mpaghara - ụbọchị ọmụmụ a na-agaghị asị). Ọdịnihu 400 niile aha parameter na-abịanụ na-ekpepụta mpaghara ebe zuru ezu ka klaasị nwee ike ịgbanwe onwe ya.
$ 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": [ ... ]
}
| Ndehie | HTTP | Mgbe |
|---|---|---|
unknown_parameter | 400 | paramita nke abụghị mpaghara ebe nke kalkulata a (na-enwe n'aka gị-n'aka gị-n'aka gị n'aka gị) |
invalid_value | 400 | Ndesịta mpagharaogologo nke abụghị nọmba, uru dropdown n'ebe n'ebe n'ime nhọrọ ya, ụbọchị na-ezoro ezo, mọọbụ _mode a na-amaghị |
missing_parameter | 400 | Calculator na-emepụtaghị nsonaazụ ọbụla n'ihi na a hapụla ebe ọbụla na-enweghị dìfọ́ọ̀ltụ̀ na-enweghị ihe |
unsupported_country | 400 | ?country= abụghị otu nke kaadị a nwere data maka |
bad_json | 400 | POST body bụ JSON nke a ga-ejighị |
unknown_calculator | 404 | Enweghị kalkulata na slug ahụ |
invalid_key | 401 | E zigaara kii API ma ọ bụ na ọ bụghị ma ọ bụ na ọ dịghị ọrụ |
rate_limited / quota_exceeded | 429 | Oge IP nke anọnimị, mọọbụ kii nke ọnwa, ejirila ya |
too_many_invalid_requests | 429 | Nchọgharị ndị ahụ a hapụghị n'ụbọchị ahụ maka kii a - oku ndị a hapụghị bụ n'efu, yabụ ha bụ ọnụọgụgụ-echekwa n'ebe ahụ. Rézíèsì ọbụla; oku ndị ahụ e hapụghị na-echekwa n'ebe ahụ. |
The /api/v1/ Indentị na-ebipụta kii nke mpaghara ebe ọbụla, ụdị, yunit, difọ́ọ̀ltụ̀ na ọ bụrụ na ọ chọrọ - nke dị n'aka iji rụpụta klaasị nke na-echeghị na ọ ga-eme.
Nkwenye na usoroiheomume
I nwere ike ịkpọ API na kii ọbụla - ajụjụ ndị a na-ewepụ aha ha bụ nke a na-egbochi site na IP. Maka nke dị elu, nke a ga-atụ anya na ọnwa kwa (na ojiji n'omume), kewaa kii na ibe akaụntụ gị ma zipụ ya n'otu n'ime ụzọ atọ:
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"
- _Nkebi — anonymous (IP rate-limited) mọọbụ kii ọbụla na квота ọnwa nta. Ọ bụghị n'ọrụ.
- Debanye aha — 10,000 oku / ọnwa, iji azụmahịa.
- Business — $49/mo — 100,000 oku / ọnwa, n'ihu ọha throughput.
Ihe na-ewere n'ihe
Ọbụna nzaghachi na-arụ ọrụ na-eme ya. 2xx = otu n'ime ha. Ndehie ọbụla bụ n'efu: 400 maka parameter nke a na-asụgharịghị n'ụzọ ziri ezi, uru ọjọọ mọọbụ ebe achọrọ na-efu, 404 maka slug a na-amaghị, 401 maka kii ọjọọ, 429, na ihe ọbụla nke na-aga n'ụzọ na-ezighị ezi na nke anyị. Nwalee nkwekọrịta ahụ ma dozie arịrịọ gị dịka oge ole na ole ịchọrọ - ị na-akwụ ụgwọ maka nzaghachi, ọ bụghị maka ntọlite.
N'ihi na ndehie bụ n'efu ha bụ n'ihe n'ozuzu ha: ọ bụrụ na kii ọbụla na-eme ka ọ dịkwuo karịa 200 Ọ gaghị akwadoghachi nzaghachi n'ụbọchị, ọ na-enweta HTTP 429 "too_many_invalid_requests" ruo mgbe ọbụla ọbụla. Nkpọ oku na-abịa n'ụzọ ahụ agaghị akwụ ụgwọ, yabụ na ọ ga-ahụ ya na-arụ ọrụ - ọ na-echekwa naanị onye ọrụ ahụ na-abịa n'ụbọchị.
Mgbe a na-eji kii nke ọnwa kwaota ruo elu, API na-ezigaghachi HTTP 429 na ndehie "quota_exceeded"; kii a na-amaghị ma ọ bụ kii a na-ezigaghị azụ na-ezigaghachi HTTP 401. Họrọ Nhazi peeji.
Ụdị
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}'
Ńkwádò niile
Otu n'ime ngwụcha nke ọbụla na-ejikwa kalkulata. Kii mpaghara ebe na kii nsonaazụ maka ọbụla bụ na /api/v1/ ndesịta.
Ego (41)
Tax na Saịlọn (2)
| Calculator | Ebemkpofuozi |
|---|---|
| Calculator | /api/v1/income-tax/ |
| Nhazi | /api/v1/sales-tax/ |
Nlekọta na mmezi (28)
Ụdị (26)
Statistics (15)
Ntụgharị yunit (17)
Saịkọn na injinị (27)
Ụbọchị na oge (15)
_Nkebi (27)
Ihe a na-ahụta bụ n'ihi nlekọta n'ozuzu ya, ọ bụghị nlekọta ego, ọgwụ ma ọ bụ nlekọta ego.