Introduzione
In questo documento verranno descritti i principali servizi esposti per il recupero della struttura concorsuale, con la possibilità di effettuare nuovi iscrizioni ai concorsi e caricare classifiche/graduatorie.
URL
Base URL: https://test.unidemo.esse3.it/e3rest/api/concorsi-service-v2/
Autenticazione
L'autenticazione dei servizi è configurata per l'accesso alle sole utenze tecniche Servizi REST su ESSE3#GestionepermessiperUtenzeTecniche.
Risorse
Concorsi
GET /api/concorsi-service-v2/concorsi
Questo servizio rest di tipo GET recupera la lista dei concorsi presenti sull’ateneo.
È possibile filtrare per anno accademico appendendo il parametro aaId /api/concorsi-service-v2/concorsi?aaId=2021.
Results
Status code | Description | Example |
---|---|---|
200 OK | Elenco dei concorsi recuperati per l'anno 2021. | { "aaId":2020, "concorsoDes":"Domanda di ammissione per anni successivi al primo - DESIGN DEL PRODOTTO INDUSTRIALE", "concorsoDesEng":"Domanda di ammissione per anni successivi al primo - DESIGN DEL PRODOTTO INDUSTRIALE", "concorsoNotaEng":"", "dataFinAmmWeb":"20/08/2021 23:59", "dataIniAmmWeb":"01/07/2021 10:00", "linkBando":"", "modTest":"U", "nota":"", "numPrefBorse":0, "numPrefBorseMin":0, "numPrefLingue":0, "numPrefLingueMin":0, "numPrefMax":1, "numPrefMin":1, "testId":1, "tipoCorsoCod":"L2", "tipoCorsoDes":"Corso di Laurea", "tipoCorsoDesEng":"BACHELOR DEGREE", "tipoTestCod":"A", "tipoTestDes":"di Ammissione" }, { "aaId":2021, "concorsoDes":"Domanda di ammissione per anni successivi al primo - SCIENZE BIOLOGICHE", "concorsoDesEng":"Domanda di ammissione per anni successivi al primo - SCIENZE BIOLOGICHE", "concorsoNotaEng":"", "dataFinAmmWeb":"15/09/2021 23:59", "dataIniAmmWeb":"01/07/2021 10:00", "linkBando":"", "modTest":"U", "nota":"", "numPrefBorse":0, "numPrefBorseMin":0, "numPrefLingue":0, "numPrefLingueMin":0, "numPrefMax":1, "numPrefMin":1, "testId":2, "tipoCorsoCod":"L2", "tipoCorsoDes":"Corso di Laurea", "tipoCorsoDesEng":"BACHELOR DEGREE", "tipoTestCod":"A", "tipoTestDes":"di Ammissione" } |
422 Bad Reques | Se uno dei query param non è presente | { "statusCode":200, "retCode":-1, "retErrMsg":"Parametri non corretti", "errDetails":[ { "errorType":"stackTrace", "value":"SocketTimeoutException....", "errorCode":"1111" } ] } |
GET /api/concorsi-service-v2/concorsi/{aaId}/{testId}
Questo servizio rest di tipo GET recupera la configurazione di un singolo concorso filtrando per i parametri aaId e testId.
Il servizio contiene il dettaglio sulle preferenze richieste in fase di iscrizione al concorso.
Gli indentificativi recuperati dalle strutture di “preferenza” saranno quelli richiesti dalla PUT di iscrizione ai concorsi (per esempio dalla struttura dettTest verrà richiesto il dettTestId)
Results
Status code | Description | Example |
---|---|---|
200 OK | Dettaglio del concorsi recuperati per l'anno 2021 e testId 1. |
[ { "aaId":2017, "testId":1, "tipoTestCod":"A", "modTest":"U", "tipoTestDes":"di Ammissione", "concorsoDes":"Ammissione alle lauree triennali", "concorsoDesEng":"Admission test", "dataIniAmmWeb":"18/12/2017", "dataFinAmmWeb":"18/12/2017", "nota":"Attenzione", "concorsoNotaEng":"Attention", "tipoCorsoCod":"L2", "tipoCorsoDes":"Corso di Laurea", "tipoCorsoDesEng":"Bachelor Degree", "linkBando":"https://www.cineca.it/bando", "dettTest":[ { "aaId":2017, "testId":1, "dettTestId":1, "cdsId":1, "tipoCatAmmId":999, "dettaglio":"Descrizione lingua italiana", "dettaglioEng":"Description", "numPostiTot":20, "numPostiLiberi":2, "dataIniVisGradWeb":"18/12/2017", "dataFinVisGradWeb":"18/12/2017", "annoCorso":2017, "prefPds":[ { "aaId":2021, "testId":1, "dettTestId":1, "cod":"PDS", "des":"Percorso generico", "cdsId":2021, "aaOrdId":2021, "pdsId":2021 } ], "prefSedi":[ { "aaId":2021, "testId":1, "dettTestId":1, "sedeDes":"2021", "sedeId":2021, "postiDettSedeId":2021 } ] } ], "prefLingue":[ { "aaId":2021, "testId":1, "concLingueId":1, "linguaId":5, "linguaDes":"2021", "iso6392Cod":"eng" } ], "prefBorse":[ { "aaId":2021, "testId":1, "concBorseId":1, "tipoBorsaCod":"BOR", "tipoBorsaDes":"Borsa di studio", "numBorse":3 } ] } ] |
422 Bad Reques | Se uno dei query param non è presente | { "statusCode": 200, "retCode": -1, "retErrMsg": "Parametri non corretti", "errDetails": [ { "errorType": "stackTrace", "value": "SocketTimeoutException....", "errorCode": "1111" } ] } |
Iscrizione concorsi
PUT /concorsi/{aaId}/{testId}/iscrizioni/{persId}
Questo servizio rest di tipo PUT permette di iscrivere una persona ad un concorso.
È necessario specificare le chiavi che identificano il concorso al quale si vuole iscrivere lo studente, quindi aaId e testId, e la chiave che identifica la persona, quindi persId.
Successivamente bisogna definire i valori di tutte le proprietà relative all’iscrizione nel parametro body.
Parameters
Name | Type | Required | Description | Example |
---|---|---|---|---|
aaId | Number | Y | Anno concorso | 2021 |
testId | Number | Y | Identificativo concorso | 1 |
persId | Number | Y | Identificativo della persona per la quale verrà inserita l'iscrizione al concorso | 1 |
body | Y | Rappresenta i dati dell'iscrizione da inserire | { "tipoTititCod":"1", "tipoCatAmmId":999, "tipoCorsoCod":"1", "trattHandFlg":0, "tipoHandicap":"D", "noteHand":"1", "percHand":60.25, "nota":"1", "prefLingue":[ { "concLingueId":101, "prefOrd":1 } ], "prefBorse":[ { "concBorseId":101, "prefOrd":1 } ], "prefDett":[ { "dettTestId":101, "prefOrd":1 } ] } |
Results
Status code | Description | Example |
---|---|---|
200 OK | In caso di nuova iscrizione inserita verrà restituito un json contentente i dati dell'iscrizione | [ { "aaId":2021, "testId":1, "persId":1, "posId":3, "tipoTestCod":"A", "modTest":"U", "tipoTestDes":"di Ammissione", "tipoTestDesEng":"Admission", "concorsoDes":"Ammissione alle lauree triennali", "concorsoDesEng":"Admission test", "dataIniAmmWeb":"18/12/2017", "dataFinAmmWeb":"18/12/2017", "dataIniDomRipescaggio":"22/08/2017", "dataFinDomRipescaggio":"17/09/2017", "concNazionale":1, "nota":"Attenzione", "concorsoNotaEng":"Attention", "tipoCorsoCod":"L2", "tipoCorsoDes":"Corso di Laurea", "tipoCorsoDesEng":"Bachelor Degree", "linguaConcorso":[ { "persId":1, "posId":1, "concLingueId":2021, "prefOrd":1, "des":"descrizone lingua", "linguaId":1 } ], "dettaglioSede":[ { "persId":1, "posId":1, "dettTestId":1, "sedeId":2021, "prefOrd":1, "des":"descrizone lingua" } ], "dettaglioPds":[ { "persId":1, "posId":1, "dettTestId":2021, "cdsId":1, "aaOrdId":2020, "pdsId":2017, "cod":"PDS", "des":"descrizone lingua" } ], "borse":[ { "persId":1, "posId":1, "concBorseId":1, "tipoBorsaCod":"2017", "des":"descrizone" } ], "dettaglioTest":[ { "persId":1, "posId":1, "dettTestId":3, "prefOrd":1, "dettaglio":"32/12 - LINGUE E LETTERATURE MODERNE EUROAMERICANE", "dettaglioEng":"32/12 - MODERN EUROAMERICAN LANGUAGES AND LITERATURES" } ] } ]
|
422 Bad Reques | I possibili codici di ritorno sono i seguenti: -1 | Errore | { "statusCode": 200, "retCode": -1, "retErrMsg": "Parametri non corretti", "errDetails": [ { "errorType": "stackTrace", "value": "SocketTimeoutException....", "errorCode": "1111" } ] } |
Classifiche
PUT /concorsi/{aaId}/{testId}/classifica/{proveConcId}
Questo servizio rest di PUT permette di inserire i risultati di una singola prova concorsuale.
I parametri in PATH da sostituire sono aaId e testId, chiavi che identificano anno e progressivo del concorso, e proveConcId, identificativo della prova da caricare (recuperabile della GET /api/concorsi-service-v2/concorsi/{aaId}/{testId} ).
La validazione del seguente body segue gli standard dell’importazione classifiche da file https://wiki.u-gov.it/confluence/pages/viewpage.action?pageId=81332397#Tracciatidiimportazione/esportazioneConcorsi-IMPORTAZIONECLASSIFICASTANDARDESSE3.
Per quanto riguarda la proprietà puntiMaterie è da popolare nel caso in cui la prova sia suddivisa per materie: in questo caso i punteggi sono relativi alle materie ordinate per peso decrescente.
Parameters
Name | Type | Required | Description | Example |
---|---|---|---|---|
aaId | Number | Y | Anno concorso | 2021 |
testId | Number | Y | Identificativo concorso | 1 |
proveConcId | Number | Y | Identificativo della prova per la quale si deve inserire il punteggio in classifica. Recuperabile dalla get recuperabile della GET /api/concorsi-service-v2/concorsi/{aaId}/{testId} | 1 |
body | Y | Rappresenta i dati dell'iscrizione da inserire | [ { "prematr": 1, "numCompito": "123", "codFis": "Buono", "nome": "Mario", "cognome": "Rossi", "puntiTot": 60.5, "maxPunti": 60.5, "esitoCod": 1, "puntiMaterie": [ { "puntiMateria": 0 } ] } ] |
Results
Status code | Description | Example |
---|---|---|
200 OK | Ritorna il numero di righe elaborate con eventuali errori | [ { "numeroRecordElaborati": 0, "numeroErrori": 0, "elencoErrori": [ { "descrizioneErrore": "string" } ] } ]
|
422 Bad Reques | Se uno dei query param non è presente | { "statusCode": 200, "retCode": -1, "retErrMsg": "Parametri non corretti", "errDetails": [ { "errorType": "stackTrace", "value": "SocketTimeoutException....", "errorCode": "1111" } ] } |
Graduatorie
PUT /concorsi/{aaId}/{testId}/graduatorie/{dettTestId}
Questo servizio rest di PUT permette di inserire i risultati di un singolo dettaglio di graduatoria concorsuale.
I parametri in PATH da sostituire sono aaId e testId, chiavi che identificano anno e progressivo del concorso, e dettTestId, identificativo del dettaglio di graduatoria da caricare (recuperabile della GET /api/concorsi-service-v2/concorsi/{aaId}/{testId} ).
La validazione del seguente body segue gli standard dell’importazione graduatorie da file https://wiki.u-gov.it/confluence/pages/viewpage.action?pageId=81332397#Tracciatidiimportazione/esportazioneConcorsi-IMPORTAZIONEGRADUATORIE.
Parameters
Name | Type | Required | Description | Example |
---|---|---|---|---|
aaId | Number | Y | Anno concorso | 2021 |
testId | Number | Y | Identificativo concorso | 1 |
dettTestId | Number | Y | Identificativo del dettaglio di graduatoria per il quale si vuole caricare il punteggio. Recuperabile dalla get recuperabile della GET /api/concorsi-service-v2/concorsi/{aaId}/{testId} | 1 |
body | Y | Rappresenta i dati dell'iscrizione da inserire | [ { "prematr": 1, "codFis": "Buono", "cognome": "Rossi", "nome": "Mario", "posiz": 1, "puntiTot": 60.5, "maxPunti": 60.5, "stato": "AM" } ] |
Results
Status code | Description | Example |
---|---|---|
200 OK | Ritorna il numero di righe elaborate con eventuali errori | [ { "numeroRecordElaborati": 0, "numeroErrori": 0, "elencoErrori": [ { "descrizioneErrore": "string" } ] } ]
|
422 Bad Reques | Se uno dei query param non è presente | { "statusCode": 200, "retCode": -1, "retErrMsg": "Parametri non corretti", "errDetails": [ { "errorType": "stackTrace", "value": "SocketTimeoutException....", "errorCode": "1111" } ] } |