Il modello attuale prevede una richiesta di tipo POST, con i parametri codificati in formato JSON nel corpo della richiesta stessa. I formati dei parametri sono elencati nella tabella sottostante e variano a seconda della tipologia.
Formato dei parametri
| Tipo | Descrizione | Esempio |
|---|---|---|
| string | Stringa | "stringa" |
| text | Stringa di lunghezza massima 3000 caratteri | "stringa" |
| json | Json | {"it":"Stringa","en":"string"} se presente solo il testo in italiano può essere passato solo il valore "Stringa" |
| integer | Numero intero | "123" o 123 |
| double | Numero decimale | "123.45" o 123.45 |
| boolean | Variabile booleana | "true", true, "false" o false |
| year | Data nel formato YYYY | "2026" |
| date | Data nel formato YYYYMMDD | "20260414" |
| date-time | Data nel formato YYYYMMDD HH:mm:ss | "20260414 10:47:53" |
| JWT | JSON Web Token algoritmo HS256 | "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ikpva...." |
Il parametro apiKey è essenziale per qualsiasi operazione e deve essere incluso sia come parametro JSON nel Token che come parametro in tutte le richieste.
Il parametro ateneoKey è anch'esso fondamentale per qualsiasi operazione e deve essere inserito come parametro JSON nel Token di tutte le richieste.
L'endpoint di riferimento è situato all'indirizzo https://95.110.157.146/API/1,
quindi le richieste hanno il seguente formato: https://95.110.157.146/API/1/operazione.
L'esempio di richiesta generica include una lista dei codici di errore comuni a tutte le richieste, mentre eventuali altri errori specifici di una funzione sono elencati nella sezione dedicata alla funzione stessa.
È importante sottolineare che il nostro servizio API limita a 10.000 le richieste ogni 5 ore per ciascun metodo individuale. Superare questo limite potrebbe causare un'interruzione nel flusso delle richieste. Si consiglia pertanto di monitorare attentamente il numero di richieste effettuate e di gestire l'utilizzo delle API in modo coerente con questo limite.
Passo 1: Ottenere un token JWT Prima di effettuare qualsiasi operazione tramite le API di Sisvaldidat, è necessario ottenere un token JWT valido. Il token JWT deve contenere il parametro apiKey, che rappresenta la chiave di accesso fornita nella sezione "Amministrazione -> Api Key", e il parametro ateneoKey, che rappresenta l'identificatore dell'ateneo per cui si desidera effettuare l'operazione. Assicurarsi che il token JWT sia incluso come parametro JSON nel payload della richiesta e come parametro di tutte le richieste successive.
Passo 2: Formulare la richiesta Per verificare la correttezza dei parametri e visualizzare le informazioni sulla tua richiesta, utilizza il metodo HTTP POST all'endpoint specifico: https://sisvaldidat.it/API/4/RequestJob. La richiesta deve includere i seguenti parametri obbligatori nel payload JSON:
apiKey: Una stringa che rappresenta la chiave di accesso.ateneoKey: Un numero intero che identifica l'ateneo desiderato.strutturaKey: Chiave del tipo di importazione che si vuole effettuareazione: valori accettati add, delete e status
- Parametro
azionevaloreadd:CREATE: Indica che il job è stato creato e attende l'acquisizione dei dati.EXISTS: Segnala che il job è già attivo e in attesa di ulteriori dati.ERROR: Indica che il job non è stato creato con successo.
- Parametro
azionevaloreinfo:EXISTS: Il job è attivo e in attesa di dati.ERROR: Il job non è stato creato correttamente.
- Parametro
azionevaloredelete::DELETE: Indica che il job è stato eliminato con successo.- Condizione: Il job può essere eliminato solamente quando si trova nello stato di attesa dei dati. Non è possibile eliminare il job una volta che l'importazione è terminata.
Si prega di notare che:
- Il parametro
azionerestituisce diverse risposte a seconda dello stato del job al momento della richiesta. - Con il paramentro
azioneimpostato con valoreinfoconsente di verificare lo stato corrente del job, fornendo informazioni se è attivo o se vi sono problemi di creazione. - Con il paramentro
azioneimpostato con valoredeleteè disponibile solo quando il job si trova nello stato di "attesa dei dati". Una volta completata l'importazione, questa opzione non è più disponibile per l'eliminazione del job.
Passo 3: Eseguire la richiesta Invia la richiesta al server utilizzando il metodo HTTP POST e l'endpoint specificato. Assicurati di includere il token JWT come parametro JSON nel payload della richiesta.
Passo 4: Elaborare la risposta La risposta restituita sarà un oggetto JSON contenente informazioni sulla correttezza dei tuoi parametri e sulle richieste rimanenti. Puoi elaborare la risposta come desiderato nella tua applicazione per verificare i dettagli e l'avanzamento delle tue richieste.
Ricorda di gestire eventuali errori durante il processo di utilizzo delle API di Sisvaldidat. L'esempio di richiesta generica contiene una lista dei codici di errore comuni a tutte le richieste, mentre eventuali altri errori specifici relativi a una funzione particolare saranno descritti nella documentazione specifica della funzione stessa.
| Parametri | Formato Token | Struttura Token |
|---|---|---|
|
apiKey (string) abbligatorio token (JWT) abbligatorio |
{
"apiKey": "",
"ateneoKey": "",
"strutturaKey": "",
"azione": ""
}
|
JSONRequest {
apiKey (string) obbligatorio,
ateneoKey (integer) obbligatorio,
strutturaKey (integer) obbligatorio,
azione (string) obbligatorio
}
|
| Codice | Risposta | Descrizione |
|---|---|---|
| 200 | JSON | The request has succeeded |
| 201 | JSON | Limited success. One or more batch requests failed for the command executed. |
| 400 | JSON | Bad Request. One or more required parameters were missing or invalid |
| 405 | JSON | Method not allowed. The method specified in the Request-Line is not allowed for the resource identified by the Request-URI. |
| 702 | JSON | Maximum number of requests within 5 hours has been exceeded. |
| 900 | JSON | Execution script in error. |
| 701 | JSON | Structure job code not present. |
| 000 | JSON | Unknown application response request. |
{
"success":true,
"response":"200",
"responseDescription":"The request has succeeded",
"token":{
"state":"CREATE",
"jobKey":"3484"
}
}
{
"success":false,
"response":"403",
"responseDescription":"Forbidden. Request is missing valid credentials."
}