Il back-end dell'applicazione sarà programmato in PHP, e si occuperà di trasferire i dati dal Server al Client tramite richieste AJAX. I dati sono restituiti sottoforma di JSON. Verrà usato il framework Flight per creare un'API RESTful. Ogni richiesta dovrà avere come un header X-Authorization
contenente il proprio token.
Azienda
GET Azienda per ID
URL: https://{{url}}/company/{{id}}
Restituisce l'azienda avente l'ID fornito.
-
Richiesta
int
id
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Company
result
: Il risultato. Può esserenull
.
GET Cerca Aziende
URL: https://{{url}}/company
Restituisce le aziende attinenti ai parametri di ricerca. Gli ID minori di 0 cercano campi speciali:
ID | Campo | Descrizione |
---|---|---|
0 | Nome | Il nome dell'azienda. |
-1 | Attività | Le attività svolte dall'azienda. |
-2 | Tag | I tag dell'azienda. Il valore sarà un array di tag. |
-
Richiesta
Search
search
: I parametri di ricercaint
page
: La pagina su cui siamo attualmente. Ogni pagina fornisce 50 risultati. Se non specificato, verranno restituiti tutti i risultati.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.int
totalResults
: I risultati totali della ricerca, includendo quelli non restituiti.Company[]
results
: Il risultato. Può esserenull
.
POST Aggiungi Azienda
URL: https://{{url}}/company
Crea una nuova azienda.
-
Richiesta
string
name
: Il nome dell'azienda.Field[]
fields
: I campi dell'azienda. Se omesso, l'azienda verrà creata con tutti i campi vuoti.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.int
id
: L'ID dell'azienda appena creata. Può esserenull
.
PUT Modifica Azienda
URL: https://{{url}}/company
Modifica un'azienda ai parametri forniti.
-
Richiesta
int
id
: L'ID dell'azienda.string
name
: Il nome dell'azienda.Field[]
fields
: I campi dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
PUT Modifica Nome di un'Azienda
URL: https://{{url}}/company
Modifica il nome di un'azienda.
-
Richiesta
int
id
: L'ID dell'azienda.string
name
: Il nome dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
PUT Modifica Campo di un'Azienda
URL: https://{{url}}/company
Modifica il nome di un'azienda.
-
Richiesta
int
id
: L'ID dell'azienda.int
fId
: L'ID del campo da modificarestring
fValue
: Il valore del campo.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Elimina Azienda
URL: https://{{url}}/company/{{id}}
Elimina l'azienda con l'ID fornito.
-
Richiesta
int
id
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Struttura
GET Campo per ID
URL: https://{{url}}/structure/{{id}}
Restituisce il campo avente l'ID fornito.
-
Richiesta
int
id
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Field
field
: Il risultato. Può esserenull
.
GET Tutti i campi
URL: https://{{url}}/structure
Restituisce tutti i campi che può avere un'azienda.
- Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Field[]
fields
: Il risultato. Può esserenull
.
POST Aggiungi Campo
URL: https://{{url}}/structure
Crea una nuova azienda.
-
Richiesta
string
name
: Il nome dell'azienda.string
regex
: I valori che può accettare il campo.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.int
id
: L'ID del campo appena creato. Può esserenull
.
PUT Modifica Campo
URL: https://{{url}}/structure
Modifica un campo ai parametri forniti.
-
Richiesta
int
id
: L'ID del campo.string
name
: Il nome del campo.string
regex
: La sintassi valida che il campo può accettare.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Elimina Campo
URL: https://{{url}}/structure/{{id}}
Elimina il campo con l'ID fornito.
-
Richiesta
int
id
: L'ID del campo.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Attività
GET Attività per ID
URL: https://{{url}}/activity/{{id}}
Restituisce l'attività avente l'ID fornito.
-
Richiesta
int
id
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Activity
activity
: Il risultato. Può esserenull
.
GET Tutte le Attività
URL: https://{{url}}/activity
Restituisce tutte le attività.
- Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Activity[]
activities
: Il risultato. Può esserenull
.
POST Aggiungi Attività
URL: https://{{url}}/activity
Crea una nuova attività.
-
Richiesta
string
name
: Il nome dell'attività.string
description
: La descrizione dell'attività.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.int
id
: L'ID dell'attività appena creata. Può esserenull
.
PUT Modifica Nome di un'Attività
URL: https://{{url}}/activity
Modifica il nome di un'attività. Può essere mandata anche con i parametri di PUT Modifica Descrizione di un'Attività
-
Richiesta
int
id
: L'ID dell'attività.string
name
: Il nome dell'attività.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
PUT Modifica Descrizione di un'Attività
URL: https://{{url}}/activity
Modifica il nome di un'attività. Può essere mandata anche con i parametri di PUT Modifica Nome di un'Attività
-
Richiesta
int
id
: L'ID dell'attività.string
description
: La descrizione dell'attività.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Elimina Attività
URL: https://{{url}}/activity/{{id}}
Elimina l'attività con l'ID fornito.
-
Richiesta
int
id
: L'ID dell'attività.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Salvataggi
GET Salvataggi di Utente
URL: https://{{url}}/saved/{{id}}
Restituisce le aziende salvate dall'utente che sta effettuando la richiesta.
-
Richiesta
int
id
: L'ID dell'utente.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Company[]
saved
: Il risultato. Vuoto se non è andato a buon fine.
POST Salva Azienda
URL: https://{{url}}/saved
Salva un'azienda.
-
Richiesta
int
user
: L'ID dell'utente che sta salvando l'azienda.int
company
: L'ID dell'azienda da salvare.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Elimina Salvataggio
URL: https://{{url}}/saved
Elimina l'attività con l'ID fornito.
-
Richiesta
int
user
: L'ID dell'utente che sta eliminando il salvataggio.int
company
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Alternanza
GET Alternanza per ID
URL: https://{{url}}/internship/{{id}}
Restituisce l'alternanza avente l'id fornito.
-
Richiesta
int
id
: L'ID dell'alternanza.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Internship
internship
: Il risultato. Può esserenull
.
GET Alternanza di Azienda
URL: https://{{url}}/internship
Restituisce l'alternanza appartenente all'Azienda fornita.
-
Richiesta
int
azienda
: L'ID dell'azienda.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.Internship[]
internships
: Il risultato. Può esserenull
.
POST Aggiungi Alternanza
URL: https://{{url}}/internship
Crea una nuova attività.
-
Richiesta
int
company
: L'ID dell'azienda.int
activity
: L'ID dell'attività.string
student
: Lo studente che sta svolgendo l'attività.int
year
: L'anno in cui sta svolgendo l'attività.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.int
id
: L'ID dell'alternanza appena creata. Può esserenull
.
PUT Modifica Alternanza
URL: https://{{url}}/activity
Modifica un'alternanza.
-
Richiesta
int
id
: L'ID dell'alternanza.int
company
: L'ID dell'azienda. Opzionale.int
activity
: L'ID dell'attività. Opzionale.string
student
: Lo studente che sta svolgendo l'attività. Opzionale.int
year
: L'anno in cui sta svolgendo l'attività. Opzionale.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Elimina Alternanza
URL: https://{{url}}/internship/{{id}}
Elimina l'alternanza con l'ID fornito.
-
Richiesta
int
id
: L'ID dell'alternanza.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Privilegi
GET Privilegi di Utente
URL: https://{{url}}/privileges/{{id}}
Restituisce i privilegi dell'Utente avente l'ID fornito.
-
Richiesta
int
id
: L'ID dell'utente.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.string[]
privileges
: I privilegi. Può esserenull
.
POST Aggiungi Privilegio
URL: https://{{url}}/privilege
Aggiunge un privilegio a un utente.
-
Richiesta
int
user
: L'ID dell'utente.string
privilege
: I permessi da dare.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
DEL Togli Privilegio
URL: https://{{url}}/privilege
Toglie un privilegio all'utente con l'ID fornito.
-
Richiesta
int
user
: L'ID dell'utente.string
privilege
: Il permesso da togliere.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.
Utenti
GET Utente per ID
URL: https://{{url}}/user/{{id}}
Restituisce l'utente con ID fornito.
-
Richiesta
int
id
: L'ID dell'utente.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.User
privileges
: Il risultato. Può esserenull
.
Autenticazione
GET Autenticazione con credenziali
URL: https://{{url}}/auth
Esegue il login con le credenziali fornite. Anziché utilizzare l'header X-Authorization
, questo endpoint utilizza X-Authentication
, contenente i campi login
e pswd
sottoforma di query. Ad esempio: login=mail.esempio@gmail.com&pswd=password123456789
.
-
Richiesta
string
login
: Il nome utente o la mail.string
pswd
: La password.
-
Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.LoginInfo
user
: L'utente loggato. Può esserenull
.
GET Autenticazione con token
URL: https://{{url}}/auth
Esegue il login con il token fornito. Anziché utilizzare l'header X-Authorization
, questo endpoint utilizza X-Authentication
.
- Risposta
boolean
error
: Se sono accaduti errori durante la richiesta.string
message
: Un eventuale messaggio d'errore se la richiesta non è andata a buon fine.LoginInfo
user
: L'utente loggato. Può esserenull
.