ነጻ ካልኩሌተር
በዚህ ጣቢያ ላይ ሁሉ ካሌክተሩ ነጻ 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/
የሁሉም ካለሞተሮችን የሞተር-የሚነበብ ዝርዝር በእያንዳንዱ ፋይል (ቁልፍ፣ መለያ፣ ዓይነት፣ ቅድመ-ሁኔታ፣ ዩኒት) እና የመጨረሻ ቁልፎች - በዲናሚክ ሁኔታ ክላስተር ለመገንባት በቂ የሆነውን ይመልሳል እያንዳንዱ ክፍልም የግድ የሚያስፈልግ ምልክት ይዟል - እውነት ለጥቂት ክፍሎች ምንም ቅድመ-ሁኔታ የሌላቸው (ቀኖች, አብዛኛውን ጊዜ). እነርሱን ላክ: የቁጥጥር መሳሪያዎች አንድ ሊገመት ይችላል, የቀሪው መልስ 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. ያልታወቀው ሱልግ 404 ይመለሳል፤ ያልተደገፈ ሀገር ወይም መጥፎ መዝገብ ቤት 400 በረዳት መልዕክት እና በፍለጋ መስክ ልዩነት ይመለሳል
መተላለፊያ
የእርስዎን ፍላጎት የሚመለከቱትን ብቻ መላክ. የትኛውንም ነገር ካላስቀመጡት በሌላው ፋይል ውስጥ ይተላለፋል - የቁጥጥር ገጽ መጀመሪያ ላይ የሚሞላውን ያንን ዋጋ, ስለዚህ API እና ድረ ገጽ ሁልጊዜ ለተመሳሳይ መዝገቦች ተመሳሳይ ቁጥሮችን ይመልሳል. መልስ ሁሉ በታች የተሞላውን ይዘረዝራል defaults_applied.
API በፍጹም ሊፈታ የማይችል ነገር ሁሉ ስህተት ነው፣ ፈጽሞ ስድብ አይደለም፡ የተጻፈው ስህተት የሆኑት პარაሜትሮች፣ የክፉው ዓይነት ዋጋ፣ ያልታወቀ የወረደ ምርጫ፣ ወይም የሌለው የቀድሞው የሌለው ክፍል (የቀን ክፍሎች - የልደት ቀን ሊጠረጠር አይችልም)። በየ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 | ቍጥር ያልሆነ የቁጥር መስክ፣ ምርጫዎች ውጭ የወደቀ ዋጋ፣ የማይታወቅ ቀን፣ ወይም ያልታወቀ ዘዴ (_M) |
missing_parameter | 400 | የቁጥጥር መሳሪያው ምንም ውጤት አላመጣም ምክንያቱም የቀድሞው ያልሆነ ሜዳ ባዶ ሆኖ ተቀምጧል |
unsupported_country | 400 | ?country= ይህ መተካካያ ለሚለው መረጃ ያለው አይደለም |
bad_json | 400 | POST አካል የዋጋ JSON አይደለም |
unknown_calculator | 404 | የቁጥሮች አቀማመጥ |
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 ፍጥነት-ተወሰነ) ወይም ነጻ ቁልፍ በትንሽ ወርሃዊ ኮታ. ያልተሸጠ
- የዳታ ማውጫ — 10,000 ጥሪዎች/ወር፣ የቢዝነስ ጥቅም
- ንግድ — 100,000 ጥሪዎች / ወር, ቀደምትነት ትራንስፖርት.
የኮቶን
የፈተናው ውጤት ብቻ ነው የሚያደርገው. አንድ 2xx = አንድ ጥሪ. ስህተት ሁሉ ነጻ ነው: 400 ለ ስህተት የተጻፈው ማራሚድ, መጥፎ ዋጋ ወይም የሌለ ያስፈልጋል ሜዳ, 404 ለ ያልታወቀ ሱልግ, 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)
የፋይል ስም፦ (_F) (2)
ጤና እና ጤናማነት (28)
ዓይነት (26)
መረጃ ጠቋሚዎች (15)
የቁጥር መሳሪያዎች (17)
ሳይንስና ኢንጂነሪንግ (27)
ቀንና ሰዓት (15)
ቀን (27)
ውጤቶች ለታዳሚዎች ብቻ ናቸው፣ የገንዘብ፣ የሕክምና ወይም የክፍያ ምክር አይደሉም፡፡