API per sviluppatori
I contenuti di Tuppence sono disponibili anche per programmi e agenti AI: un'API REST pubblica in sola lettura, un server MCP e le singole pagine in markdown. Stessi dati del sito — le guide su budget, spese, risparmio e abbonamenti, i metodi di ripartizione del reddito con la loro fonte — più i calcolatori, che si eseguono via query string.
Accesso
Nessuna autenticazione e nessuna chiave. Base URL: https://tuppenceapp.app. Specifica completa in OpenAPI 3.1, catalogo in /.well-known/api-catalog.
Endpoint
| Richiesta | Risposta |
|---|---|
GET /api/v1/info | Informazioni sul sito |
GET /api/v1/methods | Metodi di budget |
GET /api/v1/guides?q=&cluster=&limit= | Elenca o cerca le guide |
GET /api/v1/guides/{slug} | Leggi una guida |
GET /api/v1/calculators | Elenca i calcolatori |
GET /api/v1/calculators/{slug}?monthlyNet=&income=&fixedCosts=&daysLeft=&monthlyEssentials=&irregularIncome=&item= | Esegui un calcolatore |
Un calcolatore chiamato senza parametri descrive sé stesso: restituisce gli input che accetta invece di un errore.
Esempi
curl https://tuppenceapp.app/api/v1/methods
curl "https://tuppenceapp.app/api/v1/guides?q=fondo%20di%20emergenza&limit=3"
curl "https://tuppenceapp.app/api/v1/calculators/50-30-20?monthlyNet=1600"
curl "https://tuppenceapp.app/api/v1/calculators/abbonamenti?item=9.99:monthly&item=59:yearly"
curl -H "Accept: text/markdown" https://tuppenceapp.app/blog/metodo-50-30-20/
curl -X POST https://tuppenceapp.app/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Server MCP
Endpoint https://tuppenceapp.app/mcp, trasporto Streamable HTTP (JSON-RPC 2.0 via POST). Tool: get_site_info, get_budget_methods, search_guides, get_guide, list_calculators, compute. Risorse: llms.txt, metodi di budget, indice delle guide e dei calcolatori. Manifest in server-card.json e server.json.
{
"mcpServers": {
"tuppence": { "type": "http", "url": "https://tuppenceapp.app/mcp" }
}
}Limiti
60 richieste ogni 60 secondi per indirizzo IP, applicate dalla singola istanza edge. Ogni risposta riporta gli header RateLimit-Policy: "default";q=60;w=60 e RateLimit: "default";r=…;t=…. Oltre il limite la risposta è 429 con Retry-After.
Errori
Gli errori sotto /api/ usano application/problem+json (RFC 9457) con i campi type, title, status, detail, code e resolution.
| code | HTTP |
|---|---|
invalid_query | 400 |
invalid_cluster | 400 |
invalid_limit | 400 |
invalid_slug | 400 |
invalid_amount | 400 |
guide_not_found | 404 |
calculator_not_found | 404 |
not_found | 404 |
method_not_allowed | 405 |
rate_limited | 429 |
{
"type": "https://tuppenceapp.app/docs/#errori",
"title": "Not Found",
"status": 404,
"detail": "Nessuna guida con slug \"xyz\".",
"code": "guide_not_found",
"resolution": "Elenca le guide con GET https://tuppenceapp.app/api/v1/guides."
}Markdown e llms.txt
Ogni pagina risponde in markdown se la richiesta ha Accept: text/markdown. Le guide sono anche file statici in /content/blog/<slug>.md. L'indice per agenti è in llms.txt, il testo completo in llms-full.txt.
Uso dei risultati
Tuppence è un progetto indipendente: non è una banca, non è un intermediario finanziario e non offre consulenza finanziaria. I contenuti di questo sito hanno finalità divulgativa.