Ազատ հաշվիչ API
Այս կայքում յուրաքանչյուր հաշվիչ անվճար JSON API է։ Ոչ մի գրանցում, ոչ մի API կոդ, CORS-ի աջակցություն՝ կոչել այն ձեր սերվերից կամ ուղղակիորեն բրաուզերից։
Համառոտ
API-ն կատարում է նույն մաթեմատիկական գործողությունները, ինչ կայքը։ Առաջարկվում է ուղարկել հաշվիչի դաշտի արժեքները որպես հարցման պարամետրեր կամ JSON և ստանալ հաշվարկված արդյունքները որպես JSON՝ ներառյալ ցանկացած ամրապնդման ժամանակացույց կամ դիագրամային տվյալներ, որոնք թողարկում է հաշվիչը։
- 198+ հաշվիչներ, յուրաքանչյուրը իր վերջնական կետով
- API կոդ չկա — անանուն մուտք, IP- ի սահմանափակ արագությամբ
- CORS —
Access-Control-Allow-Origin: *(օգտագործելի սերվերային կողմ) - Օր: 60 խնդրանքներ/ժամ յուրաքանչյուր IP-ի համար (HTTP 429, եթե գերազանցում է)
- Սխալները ազատ են — միայն հաջող (2xx) պատասխանը օգտագործում է մեկ զանգ ձեր ամսական գումարից: յուրաքանչյուր 400, 401, 404, 429 և 500 զանգերը ձեզ ոչ մի գումար չեն արժենա:
Բնական URL
https://calculator.free/api/v1/
Ինդեքս — ցանկը բոլոր հաշվիչների
GET https://calculator.free/api/v1/
Վերադարձնում է բոլոր հաշվիչների մեքենայական կարդացվող ցանկը յուրաքանչյուրի դաշտերի (կապ, պիտակ, տեսակ, default, unit) և արդյունքի կապերի հետ՝ բավարար է դինամիկ կերպով ստեղծելու համար կրեատոր Յուրաքանչյուր դաշտ նաև պարունակում է պահանջվող դրոշ՝ ճշմարիտ այն մի քանի դաշտերի համար, որոնք չունեն լռելյայն (տարիներ, հիմնականում)։ Առաջարկեք դրանք՝ մի քանի հաշվիչներ կարող են եզրակացություն անել մեկից, մյուսները պատասխանում են 400 առանց դրա։
Հաշվարկել — մի քանի հաշվիչներ գործարկել
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Հատկություն
{
"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"]
}
Առաջարկվող երկրի հաշվիչները (հարկ, վարկ, եկամտային հարկեր, վաճառքի հարկեր…) ?country=us|uk|ca|au|in|ie|nz|za. Անհայտ slug-ը վերադարձնում է 404; աջակցված չէ երկիր կամ սխալ մուտքագրում, վերադարձնում է 400 օգտակար հաղորդագրությամբ և դաշտի spec-ով։
Պարամետրեր, լռելյայն և սխալներ
Առաջարկեք միայն այն դաշտերը, որոնք ձեզ հետաքրքրում են։ Ձեր բաց թողած ցանկացած բան լրացնում է այդ դաշտի հրապարակված լռելյայն արժեքը, որը նույնն է, ինչ գումարիչի էջում նախօրոք լրացված արժեքը, այնպես որ API- ն և կայքը միշտ էլ վերադարձնում են նույն թվերը նույն մուտքագրումների համար։ Յուրաքանչյուր պատասխանում նշվում է, թե ինչ է այն ներառել ներքևում defaults_applied.
Ամեն ինչ, ինչը API- ն չի կարող հանգիստ լուծել, սխալ է, ոչ մի դեպքում 0: սխալ գրված պարամետր, սխալ տիպի արժեք, անհայտ իջեցվող ընտրանք կամ բացակայող դաշտ, որը չունի լռելյայն (օրվա դաշտերը - ծննդյան օրը չի կարող ենթադրվել)։ Յուրաքանչյուր 400- ին անունը տալիս է վիրավորական պարամետրին և հնչեցնում է դաշտի ամբողջական հատկությունը, որպեսզի հաճախորդը կարողանա ինքն իրեն ուղղել։
$ 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": [ ... ]
}
| սխալ | HTTP | Երբ |
|---|---|---|
unknown_parameter | 400 | պարամետր, որը չի հանդիսանում այս հաշվիչի դաշտ (կամ Ձեր կարծիքով ինչ-որ բան է նշանակում) |
invalid_value | 400 | գումարային դաշտ, որը թվական չէ, ցուցակի արժեք, որը գտնվում է դրա ընտրանքներից դուրս, չբաշխվող օր կամ անհայտ _ռեժիմ |
missing_parameter | 400 | հաշվիչը արդյունք չի տվել, քանի որ բաց է թողնվել լռելյայն չլինող դաշտ |
unsupported_country | 400 | ?country=-ը չի հանդիսանում այն երկրներից մեկը, որի համար այս հաշվիչը տվյալներ ունի |
bad_json | 400 | POST մարմինը ոչ ճիշտ JSON է |
unknown_calculator | 404 | ոչ մի հաշվիչ այս slug- ի հետ |
invalid_key | 401 | API կոդը ուղարկվել է, բայց անհայտ է կամ անակտիվ |
rate_limited / quota_exceeded | 429 | անանուն ժամային IP սահմանափակումը կամ կողքի ամսական կոտրատը օգտագործվել է |
too_many_invalid_requests | 429 | այս կոճակի համար մեկ ժամվա ընթացքում չափազանց շատ մերժված խնդրանքներ — մերժված զանգերը անվճար են, այնպես որ դրանք փոխարենը սահմանափակվում են արագությամբ։ Նորից սկսվում է ժամը մեկ անգամ, հաջողված զանգերը երբեք չեն հաշվարկվում։ |
Ընդհանուր /api/v1/ index-ը հրապարակում է յուրաքանչյուր դաշտի կոդը, տեսակը, միավորը, լռելյայնը և պահանջվում է արդյոք այն — բավական է ստեղծելու մի կրեատոր, որը երբեք չի ենթադրում։
Ավտոմատացում
Դուք կարող եք API-ին զանգահարել առանց որևէ կոդ օգտագործելու, անանուն խնդրանքները սահմանափակվում են IP հասցեով։ Ավելի բարձր, կանխատեսելի ամսական տոկոսադրույքի համար (և առևտրային օգտագործման համար), ստեղծեք կոդ ձեր հաշվի էջում և ուղարկեք այն երեք տարբերակներից մեկով.
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"
- ազատ — անհայտ (IP-ի արագության սահմանափակում) կամ անվճար ակտիվացման կոդ՝ ամսական փոքր գումարով։ Ոչ առևտրային։
- Developer — $9/mo — 10,000 calls/month, commercial use.
- Բիզնես $49/ամս — 100,000 calls/month, priority throughput.
Ինչն է հաշվարկվում ձեր կոտոնից
Միայն հաջողված պատասխանը կարող է օգնել։ Մի 2xx = մեկ զանգ։ Յուրաքանչյուր սխալ անվճար է՝ 400 սխալ գրված պարամետրի, սխալ արժեքի կամ պահանջվող դաշտի բացակայության համար, 404 անհայտ slug- ի համար, 401 սխալ կոդի համար, 429 և ցանկացած այլ բան, որը սխալ է մեր կողմից։ Գտնեք պայմանագիրը և ճշտեք ձեր խնդրանքը այնքան անգամ, որքան անհրաժեշտ է — դուք վճարում եք պատասխանների համար, ոչ թե ճշգրտումների համար։
Քանի որ սխալները ազատ են, դրանք փոխարենը սահմանափակվում են արագությամբ. եթե մեկ կոճակը ավելին է առաջացնում, քան 200 եթե ժամը մեկի ընթացքում չի ստացվել պատասխան, այն ստանում է HTTP 429 "too_many_invalid_requests" մինչև ժամը մեկը անցնի։ Հաջողված զանգերը երբեք չեն հաշվարկվում այդ ժամանակահատվածում, այնպես որ աշխատող ինտեգրումը երբեք չի տեսնի դա՝ այն միայն կլանում է կրեատորին, որը փակված է կրկնակի փորձի ալիքում։
Երբ մի կետից մյուսը անցնելիս օգտագործվում է մի քանի կետ, API-ն տալիս է HTTP 429-ը «quota_exceeded» սխալի հետ։ Անհայտ կամ անակտիվ կետերը տալիս են HTTP 401-ը։ Դիտեք ամբողջական պլանները և գրանցվեք Ընդհանուր էջ.
Օրինակներ
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}'
Բոլոր վերջնական կետերը
Յուրաքանչյուր հաշվիչի համար մեկ վերջնական կետ։ Յուրաքանչյուրի համար դաշտի և արդյունքի կոճակները գտնվում են ՝ /api/v1/ ինդեքս.
Ֆինանսական (41)
Ընդհանուր (2)
| Խնայողություն | Ավարտման կետ |
|---|---|
| Հաշվիչ | /api/v1/income-tax/ |
| Վերածնվող արժեքի հարկի և արժեքի հարկի հաշվիչ | /api/v1/sales-tax/ |
Առողջություն և ֆիզիկական պատրաստվածություն (28)
Տեսակ (26)
Տվյալների բազա (15)
Յատկութիւններ (17)
Գիտություն և ինժեներություն (27)
Տարբերակ (15)
Օրական (27)
Ընդհանուր ցուցանիշները միայն ընդհանուր ուղեցույցի համար են, ոչ ֆինանսական, բժշկական կամ հարկային խորհուրդներ։