Integrare TollCalc nella propria applicazione
TollCalc può essere integrato nel proprio software o nei flussi di lavoro AI in tre modi:
| Metodo | Ideale per |
|---|---|
| REST API | Integrazione server-server, backend personalizzati |
| MCP (Model Context Protocol) | Assistenti AI (Claude, Cursor, GPT e altri) |
Pacchetto Python tollcalc |
Script, data science, Jupyter Notebooks |
REST API
La documentazione completa dell'API (OpenAPI 3.0) è disponibile su:
Avvio rapido
curl -X POST https://app.tollcalc.eu/api/calculate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer IL_TUO_TOKEN_API" \
-d '{
"origin": "Munich, Germany",
"destination": "Vienna, Austria",
"vehicle": {
"weight": 40,
"axles": 5,
"emission_class": "euro6",
"co2_class": "class_1"
}
}'
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
origin |
string | Punto di partenza: indirizzo o "lat;lon" |
destination |
string | Punto di arrivo: indirizzo o "lat;lon" |
via |
string[] | Punti intermedi opzionali (max. 48) |
vehicle.weight |
number | Massa totale in tonnellate (es. 40) |
vehicle.axles |
integer | Numero di assi: 2, 3, 4 o 5 |
vehicle.emission_class |
string | Standard Euro: euro0–euro6 |
vehicle.co2_class |
string | Classe CO₂: class_1 (diesel standard) fino a class_5 (emissioni zero) |
plannedTripStart |
string | Data ISO-8601 opzionale ("2026-09-01") o data/ora RFC3339 ("2026-09-01T06:00:00Z"); seleziona le regole di pedaggio valide in quel momento. Predefinito: adesso |
Header HTTP opzionale:
| Header | Descrizione |
|---|---|
X-Subaccount |
Attribuzione d'uso opzionale, ad es. per un'azienda cliente o un reparto. Conteggiata per sub-account e mostrata nelle statistiche d'uso. Mancante/vuoto → Default; max 64 caratteri; consentiti A-Z a-z 0-9 _ : -; non valido → HTTP 400 |
Autenticazione
I token API sono disponibili dopo la registrazione su app.tollcalc.eu. Senza token sono consentite 10 richieste gratuite al mese (per indirizzo IP).
Recuperare utilizzo e quota
Una volta integrata l'API, puoi recuperare consumo e quota in modo programmatico – entrambi gli endpoint sono read-only, non consumano quota e accettano lo stesso bearer token:
| Endpoint | Descrizione |
|---|---|
GET /api/usage |
Calcoli riusciti del mese, suddivisi per X-Subaccount |
GET /api/quota |
Consumo, limite mensile e quota residua |
Parametri query opzionali: year e month (predefinito: mese corrente).
# Utilizzo per sub-account
curl https://app.tollcalc.eu/api/usage \
-H "Authorization: Bearer IL_TUO_TOKEN_API"
# {"year":2026,"month":9,"total":1000,
# "sub_accounts":[{"key":"kunde_a","count":500},{"key":"Default","count":320}]}
# Quota residua
curl https://app.tollcalc.eu/api/quota \
-H "Authorization: Bearer IL_TUO_TOKEN_API"
# {"year":2026,"month":9,"plan":"api","used":123,"limit":5000,"remaining":4877}
Senza header X-Subaccount su un calcolo, le chiamate vengono attribuite alla chiave Default. Con piani illimitati limit e remaining sono null.
MCP – Integrazione negli assistenti AI
TollCalc supporta il Model Context Protocol (MCP) e può essere collegato direttamente a strumenti AI come Claude Desktop, Cursor o qualsiasi altro assistente compatibile.
Endpoint
POST https://app.tollcalc.eu/mcp
Strumenti disponibili
| Strumento | Descrizione |
|---|---|
calculate_toll |
Calcola i pedaggi per un percorso di camion |
get_quota |
Verifica la quota rimanente per la sessione corrente |
Configurazione in Claude Desktop
Aggiungete quanto segue alla configurazione di Claude Desktop (claude_desktop_config.json):
Opzione A – OAuth (consigliato): Solo l'URL, nessun token necessario.
{
"mcpServers": {
"tollcalc": {
"url": "https://app.tollcalc.eu/mcp"
}
}
}
Opzione B – Chiave API (per l'automazione): Token configurato manualmente, ad es. per integrazioni server-server.
{
"mcpServers": {
"tollcalc": {
"url": "https://app.tollcalc.eu/mcp",
"headers": {
"Authorization": "Bearer IL_TUO_TOKEN_API"
}
}
}
}
Senza configurazione sono disponibili 10 richieste gratuite per sessione MCP (= per conversazione) — nessun account richiesto. Dopo 10 richieste, Claude Desktop apre automaticamente il browser per il login (OAuth 2.0). Dopo l'accesso si applica la quota del piano scelto. I token API per l'opzione B possono essere creati su app.tollcalc.eu.
Livelli di dettaglio
Lo strumento calculate_toll supporta tre livelli di dettaglio tramite il parametro detail:
| Valore | Contenuto |
|---|---|
compact (predefinito) |
Pedaggio totale, km a pedaggio, km gratuiti, ripartizione per paese |
detailed |
Come compact, più costi per segmento (senza geometria) |
full |
Come detailed, più coordinate e informazioni di debug |
Campi della risposta
Tutti i livelli di dettaglio includono i seguenti campi:
| Campo | Tipo | Descrizione |
|---|---|---|
origin |
string | Nome del punto di partenza risolto |
destination |
string | Nome della destinazione risolta |
total_toll_eur |
number | Pedaggio totale in EUR |
total_distance_km |
number | Distanza totale del percorso in km |
toll_km |
number | km con pedaggio |
toll_free_km |
number | km senza pedaggio |
countries |
array | Dettaglio per paese (country, country_name, total_km, toll_km, toll_eur) |
info_url |
string | Link per visualizzare il calcolo nell'app web TollCalc — incluso il percorso pianificato su mappa interattiva; condivisibile con colleghi o da aprire nel browser |
Con detail=detailed, countries include anche segments (road, type, km, toll_eur per segmento).
Con detail=full, i segmenti includono coordinate, source_url, matched_geofence e geometria.
Pacchetto Python tollcalc
Il pacchetto Python tollcalc racchiude la REST API per l'uso da script Python o Jupyter Notebooks.
Installazione
pip install tollcalc
Utilizzo
from tollcalc import calculate_toll, get_usage, get_quota
result = calculate_toll(
origin="Munich, Germany",
destination="Vienna, Austria",
weight=40,
axles=5,
emission_class="euro6",
co2_class="class_1",
token="IL_TUO_TOKEN_API",
)
print(f"Pedaggio totale: {result['total_toll_eur']:.2f} EUR")
print(f"Distanza: {result['total_distance_km']:.1f} km")
for country in result["countries"]:
print(f" {country['country_name']}: {country['toll_eur']:.2f} EUR ({country['toll_km']:.0f} km a pedaggio)")
Utilizzo e quota da Python
from tollcalc import get_usage, get_quota
usage = get_usage(token="IL_TUO_TOKEN_API")
print(usage["total"], "Calls")
for s in usage["sub_accounts"]:
print(f" {s['key']}: {s['count']}")
quota = get_quota(token="IL_TUO_TOKEN_API")
print(f"{quota['used']} / {quota['limit']} – rimanenti: {quota['remaining']}")
Documentazione del pacchetto
Documentazione completa ed esempi su PyPI: pypi.org/project/tollcalc
Prezzi e quote
| Piano | Richieste/mese | Prezzo |
|---|---|---|
| Free (senza token) | 10 per sessione MCP (= per conversazione) | gratuito |
| Starter | fino a 500 | da 9 €/mese |
| Professional | fino a 5.000 | da 49 €/mese |
| Enterprise | illimitato | su richiesta |
Tutti i piani e i prezzi aggiornati: tollcalc.eu/en/#pricing
Per domande sull'integrazione: support@tollcalc.eu