Differenze tra le versioni di "Generale"

Da CometaSoftware Wiki.
Jump to navigation Jump to search
 
(23 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 
<p>
 
<p>
         Le REST API di Cometa mettono a disposizione diverse funzionalità
+
         Le REST API di Cometa mettono a disposizione diverse funzionalità e sono accessibili all'indirizzo <span style='font-weight:900;text-decoration:underline'>https://www.cometasoftware.com/CometaApi/</span> endpoint da aggiungere a tutte le chiamate ai metodi esposti
 
         <br /><br />Il token di autenticazione viene restituito dal metodo di login ed ha una sua validità temporale.
 
         <br /><br />Il token di autenticazione viene restituito dal metodo di login ed ha una sua validità temporale.
 
         <br />Il <b>token</b> deve essere passato generalmente nell'header della richiesta col nome: "token". <b>E' richiesto per tutti i metodi eccetto login</b>
 
         <br />Il <b>token</b> deve essere passato generalmente nell'header della richiesta col nome: "token". <b>E' richiesto per tutti i metodi eccetto login</b>
Riga 6: Riga 6:
 
         <br />Si può verificare la validità del token con il metodo <b>checktoken</b>.
 
         <br />Si può verificare la validità del token con il metodo <b>checktoken</b>.
 
         <br />Se il token è scaduto occorre recuperarne un'altro semplicemente effettuando il login.
 
         <br />Se il token è scaduto occorre recuperarne un'altro semplicemente effettuando il login.
        <br />Si seguito sarà indicato con <b>UT</b> l'utente Cometa e con <b>CL</b> il Cliente.
 
        <br />In qualsiasi metodo in prametro <b>id</b> può essere specificato anche nel path dell'URL con la solita notazione [metodo]/[valore parametro id]?...
 
 
 
     </p>
 
     </p>
 
     <p>
 
     <p>
 
         Metodi presenti un questa sezione:
 
         Metodi presenti un questa sezione:
 
         <ul>
 
         <ul>
             <li><a href="#login"><b>login</b></a> metodo per effettuare l'autenticazione</li>
+
             <li><b>login</b> metodo per effettuare l'autenticazione</li>
             <li><a href="#loginReset"><b>login/resetPassword</b></a> metodo per il reset della password</li>
+
             <li><b>checkToken</b> metodo per verificare la validità del token</li>
            <li><a href="#checkToken"><b>checkToken</b></a> metodo per verificare la validità del token</li>
+
              
             <li><a href="#cambioP"><b>cambioPassword</b></a> metodo modificare la password</li>
 
            <li><a href="#contratto"><b>contratto</b></a> metodo per recuperare le info sul contratto dell'utente collegato</li>
 
            <li><a href="#contratto"><b>deleteToken</b></a> elimina il token passato in header</li>
 
 
         </ul>
 
         </ul>
  
 
     </p>
 
     </p>
 +
<table id="tblFunzioni" border="0" style="border:1px solid #999; border-collapse:collapse">
 +
            <tr>
 +
                <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:nowrap;'>METODO</th>
 +
                <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:nowrap;'>HTTP Verb</th>
 +
                <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:nowrap;'>PARAMETRI</th>
 +
                <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:nowrap;'>RISULTATO</th>
 +
 +
            </tr>
 +
            <tr>
 +
                <td id="login" style='border: 1px solid #999; padding: 3px; vertical-align: top;'>
 +
 +
<b>login</b></td>
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>POST, GET</td>
 +
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>
 +
                  <p><b>application/json</b></p>
 +
                    <pre>
 +
{
 +
"username":"",
 +
"password":"",
 +
"id": ""
 +
}
 +
</pre>
 +
                    <p><b>descrizione dei parametri</b></p>
 +
                    <table border="0" style="border:1px solid #999; border-collapse:collapse">
 +
                        <tr>
 +
                            <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:owrap;'>parametro</th>
 +
                            <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:owrap;'>descrizione</th>
 +
                            <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:owrap;'>default</th>
 +
                            <th style=' border: 1px solid #999; padding: 3px; font-size: 10pt; background-color: #DDD; text-transform: uppercase; white-space:owrap;'>obbligatorio</th>
 +
                        </tr>
 +
                        <tr>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'><b>username</b></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>nome utente login</td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>SI</td>
 +
                        </tr>
 +
 +
                        <tr>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'><b>password</b></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>password utente login</td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>SI</td>
 +
                        </tr>
 +
                        <tr>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'><b>id</b></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>codice Cliente di Cometa</td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'></td>
 +
                            <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>SI</td>
 +
                        </tr>
 +
                    </table>
 +
 +
 
 +
 +
 +
                </td>
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>
 +
                    <p>Risposta:</p>
 +
                    <pre>
 +
{
 +
  "token": "541bee22-edf2-4c04-98a1-66222b55d759",
 +
  "passwordDaCambiare": false,
 +
  "nominativo": "ACCENTURE",
 +
  "clienteCometa": "OCN",
 +
  "cliente": true,
 +
  "utente": false,
 +
  "capoProgetto": true,
 +
  "responsabileDiStruttura": true,
 +
  "approvatoreGiustificativi": true,
 +
  "scadenza": "2020-03-25T12:20:18.0881294+01:00",
 +
  "moduliAbilitati": [
 +
        "TASKS"
 +
    ],
 +
  "permessi": [
 +
    {
 +
      "nome": "Cometa Cliente",
 +
      "descrizione": "Accesso come Cliente",
 +
      "inserimento": true,
 +
      "lettura": true,
 +
      "modifica": true,
 +
      "eliminazione": true,
 +
      "esecuzione": true
 +
    }
 +
  ]
 +
}</pre>
 +
                    <ul>
 +
                        <li><b>token</b>: è il token di autenticazione necessario da passare nell'header delle api che lo richiedono</li>
 +
                        <li><b>passwordDaCambiare</b>: obbligo per l'utente di cambiare la password</li>
 +
                        <li><b>nominativo</b>: Nominativo dell'utente/cliente di cliente collegato</li>
 +
                        <li><b>clienteCometa</b>: nome del cliente dell'istanza di Cometa</li>
 +
                        <li><b>cliente</b>: true se chi si collega è un cliente di cliente Cometa</li>
 +
                        <li><b>utente</b>: true se chi si collega è un utente di cliente Cometa</li>
 +
                        <li><b>permessi</b>: un array di oggetti che rappresentano i permessi associati all'utente collegato</li>
 +
                    </ul>
 +
 +
                </td>
 +
 +
            </tr>
 +
            <tr>
 +
           
 +
            <tr>
 +
                <td id="checkToken" style='border: 1px solid #999; padding: 3px; vertical-align: top;'><b>checkToken</b></td>
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>POST, GET</td>
 +
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'></td>
 +
                <td style='border: 1px solid #999; padding: 3px; vertical-align: top;'>
 +
<p>Risposta:</p>
 +
                    <pre>
 +
{
 +
    "valido": true,
 +
    "nominativo": "Parenti Emanuele",
 +
    "clienteCometa": "OCN",
 +
    "cliente": false,
 +
    "utente": false,
 +
    "capoProgetto": true,
 +
    "responsabileDiStruttura": true,
 +
    "approvatoreGiustificativi": true,
 +
    "moduliAbilitati": [
 +
        "TASKS"
 +
    ],
 +
    "permessi": [
 +
        {
 +
            "nome": "Documenti",
 +
            "descrizione": "",
 +
            "inserimento": true,
 +
            "lettura": true,
 +
            "modifica": true,
 +
            "eliminazione": true,
 +
            "esecuzione": true
 +
        },
 +
        {
 +
            "nome": "Giustificativi",
 +
            "descrizione": "",
 +
            "inserimento": false,
 +
            "lettura": false,
 +
            "modifica": false,
 +
            "eliminazione": false,
 +
            "esecuzione": true
 +
        },
 +
        {
 +
            "nome": "Inserimento ore",
 +
            "descrizione": "",
 +
            "inserimento": true,
 +
            "lettura": true,
 +
            "modifica": true,
 +
            "eliminazione": true,
 +
            "esecuzione": true
 +
        },
 +
        {
 +
            "nome": "Rubrica",
 +
            "descrizione": "",
 +
            "inserimento": false,
 +
            "lettura": false,
 +
            "modifica": false,
 +
            "eliminazione": false,
 +
            "esecuzione": false
 +
        }
 +
    ]
 +
}
 +
</pre>
 +
                    <ul><li><b>valido</b>: true se il token è ancora valido</li></ul>
 +
                </td>
 +
 +
            </tr>
 +
 +
         
 +
        </table>

Versione attuale delle 08:33, 30 mar 2020

Le REST API di Cometa mettono a disposizione diverse funzionalità e sono accessibili all'indirizzo https://www.cometasoftware.com/CometaApi/ endpoint da aggiungere a tutte le chiamate ai metodi esposti

Il token di autenticazione viene restituito dal metodo di login ed ha una sua validità temporale.
Il token deve essere passato generalmente nell'header della richiesta col nome: "token". E' richiesto per tutti i metodi eccetto login
Alternativamente il token può essere passato anche come parametro "token" nell'url della richiesta, utile quando non si può passare nessun header alla richiesta.
Si può verificare la validità del token con il metodo checktoken.
Se il token è scaduto occorre recuperarne un'altro semplicemente effettuando il login.

Metodi presenti un questa sezione:

  • login metodo per effettuare l'autenticazione
  • checkToken metodo per verificare la validità del token

METODO HTTP Verb PARAMETRI RISULTATO
login POST, GET

application/json

{
"username":"",
"password":"",
"id": ""
}

descrizione dei parametri

parametro descrizione default obbligatorio
username nome utente login SI
password password utente login SI
id codice Cliente di Cometa SI



Risposta:

{
  "token": "541bee22-edf2-4c04-98a1-66222b55d759",
  "passwordDaCambiare": false,
  "nominativo": "ACCENTURE",
  "clienteCometa": "OCN",
  "cliente": true,
  "utente": false,
  "capoProgetto": true,
  "responsabileDiStruttura": true,
  "approvatoreGiustificativi": true,
  "scadenza": "2020-03-25T12:20:18.0881294+01:00",
  "moduliAbilitati": [
        "TASKS"
    ],
  "permessi": [
    {
      "nome": "Cometa Cliente",
      "descrizione": "Accesso come Cliente",
      "inserimento": true,
      "lettura": true,
      "modifica": true,
      "eliminazione": true,
      "esecuzione": true
    }
  ]
}
  • token: è il token di autenticazione necessario da passare nell'header delle api che lo richiedono
  • passwordDaCambiare: obbligo per l'utente di cambiare la password
  • nominativo: Nominativo dell'utente/cliente di cliente collegato
  • clienteCometa: nome del cliente dell'istanza di Cometa
  • cliente: true se chi si collega è un cliente di cliente Cometa
  • utente: true se chi si collega è un utente di cliente Cometa
  • permessi: un array di oggetti che rappresentano i permessi associati all'utente collegato
checkToken POST, GET

Risposta:

{
    "valido": true,
    "nominativo": "Parenti Emanuele",
    "clienteCometa": "OCN",
    "cliente": false,
    "utente": false,
    "capoProgetto": true,
    "responsabileDiStruttura": true,
    "approvatoreGiustificativi": true,
    "moduliAbilitati": [
        "TASKS"
    ],
    "permessi": [
        {
            "nome": "Documenti",
            "descrizione": "",
            "inserimento": true,
            "lettura": true,
            "modifica": true,
            "eliminazione": true,
            "esecuzione": true
        },
        {
            "nome": "Giustificativi",
            "descrizione": "",
            "inserimento": false,
            "lettura": false,
            "modifica": false,
            "eliminazione": false,
            "esecuzione": true
        },
        {
            "nome": "Inserimento ore",
            "descrizione": "",
            "inserimento": true,
            "lettura": true,
            "modifica": true,
            "eliminazione": true,
            "esecuzione": true
        },
        {
            "nome": "Rubrica",
            "descrizione": "",
            "inserimento": false,
            "lettura": false,
            "modifica": false,
            "eliminazione": false,
            "esecuzione": false
        }
    ]
}
  • valido: true se il token è ancora valido