Δωρεάν υπολογιστής API
Κάθε υπολογιστής σε αυτό το site είναι επίσης ένα δωρεάν JSON API. Δεν εγγραφή, δεν API κλειδί, CORS-enabled
Επισκόπηση
Η API τρέχει ακριβώς τα ίδια μαθηματικά που χρησιμοποιεί η ιστοσελίδα. Στείλτε τιμές πεδίου ενός υπολογιστή ως παραμέτρους ερώτημα ή JSON και να πάρει τα υπολογισμένα αποτελέσματα πίσω όπως JSON
- 198+ αριθμομηχανές, το καθένα με το δικό του τελικό σημείο
- Δεν υπάρχει κλειδί API — ανώνυμη πρόσβαση, ποσοστό που περιορίζεται από την ΠΕ
- CORS —
Access-Control-Allow-Origin: *(χρησιμοποιήσιμη πλευρά πελάτη) - Όριο επιτοκίου: 60 αιτήσεις/ώρα ανά ΠΕ (HTTP 429 όταν σημειώνεται υπέρβαση)
- Τα λάθη είναι δωρεάν — only a successful (2xx) response uses one call from your monthly quota. Every 400, 401, 404, 429 and 500 costs you nothing.
URL βάσης
https://calculator.free/api/v1/
Δείκτης
GET https://calculator.free/api/v1/
Επιστρέφει μια λίστα με όλα τα πεδία του κάθε υπολογιστή με δυνατότητα ανάγνωσης με μηχανή (κλειδί, ετικέτα, τύπος, προεπιλογή, μονάδα) και αποτέλεσμα αρκετά για να χτίσει έναν πελάτη δυναμικά. Each field also carries a required flag — true for the few fields that have no default (dates, mostly). Send those: a couple of calculators can infer one, the rest answer 400 without it.
Υπολογίστε
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 με ένα χρήσιμο μήνυμα και το πεδίο spec.
Παράμετροι, προεπιλογές και σφάλματα
Στείλτε μόνο τα πεδία που σας ενδιαφέρει. Οτιδήποτε αφήσετε έξω είναι γεμάτο με ότι το πεδίο έχει δημοσιευθεί προεπιλογή.. την ίδια τιμή η σελίδα υπολογιστή pre-fills, έτσι ώστε το API και η ιστοσελίδα πάντα επιστρέφουν τους ίδιους αριθμούς για τις ίδιες εισροές. defaults_applied.
Οτιδήποτε δεν μπορεί να επιλύσει ειλικρινά είναι ένα σφάλμα, ποτέ ένα μηδέν: μια παραμέτρο που λανθασμένα γράφεται, μια τιμή του λάθος τύπου, μια άγνωστη επιλογή πτώσης, ή ένα πεδίο που λείπει που δεν έχει προεπιλεγμένη (τα πεδία ημερομηνίας ~ μια ημερομηνία γέννησης δεν μπορεί να μαντευτεί). Κάθε 400 ονόματα η παράμετρος προσβλητικό και αντηχεί το πλήρες πεδίο spec έτσι ώστε ένας πελάτης να μπορεί να διορθώσει τον εαυτό του.
$ 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 | παράμετρος που δεν είναι πεδίο αυτού του υπολογιστή (με μια πρόταση did-you-mean) |
invalid_value | 400 | πεδίο αριθμών που δεν είναι αριθμός, τιμή πτώσης εκτός των επιλογών του, ημερομηνία μη αναγνωρίσιμη ή άγνωστη κατάσταση |
missing_parameter | 400 | ο υπολογιστής δεν παρήγαγε αποτέλεσμα επειδή ένα πεδίο χωρίς προεπιλογή δεν είχε αφήσει κενό |
unsupported_country | 400 | ? χώρα= δεν είναι ένα αυτό το αριθμομηχανή έχει δεδομένα για |
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 publishes every field's key, type, unit, default and whether it is required — enough to build a client that never guesses.
Αυθεντικότητα & σχέδια
You can call the API with no key at all — anonymous requests are rate-limited by IP. For a higher, predictable monthly quota (and commercial use), create a key on your account page and send it one of three ways:
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) ή δωρεάν κλειδί με μικρή μηνιαία ποσόστωση.
- Προγραμματιστής — $9/mo — 10.000 κλήσεις/μήνα, εμπορική χρήση.
- Business — $49/mo — 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)
Φόρος & Μισθός (2)
Υγεία & Καταλληλότητα (28)
Μαθηματικά (26)
Στατιστικά (15)
Μετατροπείς μονάδας (17)
Επιστήμη και Μηχανική (27)
Ημερομηνία & ώρα (15)
Κάθε μέρα (27)
Τα αποτελέσματα είναι εκτιμήσεις για γενική καθοδήγηση μόνο, όχι οικονομικές, ιατρικές ή φορολογικές συμβουλές.