API da Calculadora Livre
Cada calculadora neste site é também uma API JSON gratuita. Sem inscrição, sem chave API, habilitado pelo CORS — ligue para o seu servidor ou diretamente para o navegador.
Visão geral
A API executa exatamente a mesma matemática que o site usa. Envie os valores de campo de uma calculadora como parâmetros de consulta ou JSON e obtenha os resultados calculados de volta como JSON — incluindo qualquer agenda de amortização ou dados de diagrama que a calculadora produz.
- 198+ calculadoras, cada uma com seu próprio ponto final
- Sem chave API — acesso anônimo, limitado por taxa por IP
- CORS —
Access-Control-Allow-Origin: *(A utilização do lado cliente) - Limite de taxa: 60 solicitações/hora por IP (HTTP 429 quando excedido)
- Os erros são livres — apenas uma resposta bem sucedida (2xx) utiliza uma chamada de sua quota mensal. Cada 400, 401, 404, 429 e 500 não custa nada.
URL base
https://calculator.free/api/v1/
Índice — listar cada calculadora
GET https://calculator.free/api/v1/
Devolve uma lista legível por máquina de todas as calculadoras com os campos de cada um (chave, etiqueta, tipo, padrão, unidade) e as chaves de resultado — suficiente para construir um cliente dinamicamente. Cada campo também carrega uma bandeira necessária — verdade para os poucos campos que não têm padrão (data, principalmente). Envie aqueles: um par de calculadoras pode inferir um, o resto resposta 400 sem ele.
Computar — executar uma calculadora
GET https://calculator.free/api/v1/<slug>/?field=value&field=value
POST https://calculator.free/api/v1/<slug>/ (JSON or form body)
Forma de resposta:
{
"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"]
}
Calculadoras de conhecimentos sobre países (mortagem, empréstimo, imposto sobre o rendimento, imposto sobre vendas...) ?country=us|uk|ca|au|in|ie|nz|za. Slug desconhecido retorna 404; país não suportado ou má entrada retorna 400 com uma mensagem útil e as especificações de campo.
Parâmetros, predefinições e erros
Enviar apenas os campos que você se importa. Qualquer coisa que você deixar fora é preenchido com o padrão publicado no campo — o mesmo valor que a página da calculadora preencher, assim a API e o site sempre retornam os mesmos números para os mesmos inputs. Cada resposta lista o que ele preenchiu em defaults_applied.
Qualquer coisa que a API não possa resolver honestamente é um erro, nunca um zero: um parâmetro mal escrito, um valor do tipo errado, uma opção de deslocamento desconhecido ou um campo sem padrão (os campos de data — uma data de nascimento não pode ser suposta). Cada 400 nomes o parâmetro ofensivo e ecoa o campo completo especifica para que um cliente possa corrigir-se.
$ 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": [ ... ]
}
| erro | HTTP | Quando |
|---|---|---|
unknown_parameter | 400 | um parâmetro que não é um campo desta calculadora (com uma sugestão did-you-mean) |
invalid_value | 400 | um campo de números que não é um número, um valor de deslocamento fora de suas opções, uma data não persecutável, ou um _mode desconhecido |
missing_parameter | 400 | a calculadora não produziu nenhum resultado porque um campo sem padrão foi deixado vazio |
unsupported_country | 400 | ?country= não é uma delas, esta calculadora tem dados para |
bad_json | 400 | o corpo POST não é JSON válido |
unknown_calculator | 404 | nenhuma calculadora com esse slug |
invalid_key | 401 | uma chave API foi enviada mas é desconhecida ou inactiva |
rate_limited / quota_exceeded | 429 | o limite de IP anônimo por hora, ou a quota mensal de uma chave, é utilizado |
too_many_invalid_requests | 429 | demasiados pedidos rejeitados em uma hora para esta chave — os chamados rejeitados são gratuitos, por isso eles são limitados à taxa em vez. Redefinir por hora; os chamados bem sucedidos nunca contam para ele. |
O /api/v1/ índice publica a chave, tipo, unidade, padrão e se é necessário — suficiente para construir um cliente que nunca adivinhe.
Planos de autenticação
Você pode chamar a API sem nenhuma chave — os pedidos anônimos são limitados por taxa IP. Para uma quota mensal mais elevada e previsível (e uso comercial), crie uma chave na sua página de contas e envie-a de três maneiras:
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"
- Livre — anonimidade (taxa de taxa limitada) ou uma chave gratuita com uma pequena quota mensal.
- Desenvolvedor & mdash; 9€/mo — 10 000 chamadas/mes, uso comercial.
- Negócios & mdash; 49/mo — 100.000 chamadas/mes, prioridade de passagem.
O que conta com a sua quota
Só uma resposta bem sucedida. Um 2xx = uma chamada. Cada erro é gratuito: um 400 para um parâmetro mal escrito, um valor errado ou um campo requerido faltante, um 404 para um slug desconhecido, um 401 para uma chave má, um 429, e qualquer coisa que corre mal do nosso lado. Explore o contrato e corrija o seu pedido tantas vezes como você precisa — você é facturado para respostas, não para correções.
Porque os erros são livres, eles são limitados à taxa em vez disso: se uma chave provoca mais do que 200 respostas rejeitadas em uma hora, ele recebe HTTP 429 "too_many_invalid_requests" até que a hora se role. Chamadas bem sucedidas nunca contam para isso, assim uma integração de trabalho nunca o verá — ele só captura um cliente preso em um loop de repetição.
Quando a quota mensal de uma chave é usada na API retorna HTTP 429 com erro "quota_exceded"; uma chave desconhecida ou inactiva retorna HTTP 401. Ver planos completos e inscrição no Preços página.
Exemplos
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}'
Todos os pontos finais
Um endpoint por calculadora. As chaves de campo e as chaves de resultado para cada um estão na /api/v1/ índice.
Finanças (41)
Impostos e Salários (2)
Saúde e Fitness (28)
Matemática (26)
Estatísticas (15)
Conversores de unidades (17)
Ciência e Engenharia (27)
Data e hora (15)
Todos os dias (27)
Os resultados são estimativas para orientação geral, não aconselhamento financeiro, médico ou fiscal.