Howto: Accesso alle nostre API con chiavi API

Descrizione Breve

Alcuni dei nostri dati sono forniti tramite API (Application Programming Interfaces): Elenco delle nostre API.

Questa pagina descrive tutti i punti importanti per accedere alle nostre API.

Descrizione tecnica

Strumenti per l’accesso

L’accesso è possibile solo tramite HTTPS. Si possono quindi utilizzare tutti gli strumenti che supportano HTTPS (ad esempio Postman, Bruno, curl, wget) o i linguaggi e le librerie di programmazione (Python requests, Java, JavaScript e molti altri).

URLs delle API

Gli URL di accesso sono contenuti nel catalogo dei dati (elenco delle nostre API) e nelle pagine dei rispettivi ricettari.

Chiavi API

Per chiamare l’API, è necessario risolvere una chiave API e includerla nell’intestazione della richiesta.

Ottenere nuove chiavi API in API Manager

Dal 3 marzo 2025, le chiavi possono essere ottenute tramite il nostro nuovo API Manager. (I menu e la guida utente di API Manager sono disponibili solo in inglese).

API Manager (https://api-manager.opentransportdata.swiss)

Figura 1: Pagina iniziale di API Manager.

Le fasi principali:

  1. È richiesta la registrazione con indirizzo e-mail, cognome, nome e password.
  2. È quindi possibile creare una o più applicazioni (“applications”).
  3. Nella pagina di panoramica di API Manager, è ora possibile selezionare un’API (“read more”, quindi “access with this plan”) e aggiungerla a un’app (“Select an App”).

È possibile ottenere una sola chiave per ogni API.

Uso delle chiavi nell’intestazione della richiesta (request header)

Quando si chiama l’API, nell’intestazione della richiesta HTTPS (request header) deve essere incluso un campo “Authorization” con la chiave:

"Authorization": "Bearer .... Inserire la chiave qui ...."

Altri punti importanti da notare

Impostare lo User-Agent nell’Header

Di norma, nell’intestazione deve essere incluso anche un campo “User-Agent”.

"<strong>User-Agent</strong>": "... qualsiasi valore ...."

Tollerare Redirects

Alcune delle nostre API utilizzano reindirizzamenti ad altri URL. Le opzioni corrispondenti devono quindi essere impostate nel rispettivo strumento (ad esempio, allow_redirect=True o simili).

Attivare la compressione

Se possibile, il client dovrebbe sempre utilizzare la compressione dei dati. Il client deve elencare i formati che può gestire, ad esempio zip, Brotli e Deflate con una sola voce:

"Accept-Encoding": "zip, br, deflate"

Esempi

bruno

Add header fields.

Figura 2: Aggiunta dei campi di intestazione nello strumento API client bruno.

curl