Skip to main content

TS Digital Insights

Processoflow.png

Il flusso per utilizzare il servizio di INSIGHTS parte dalla firma del contratto, per far ciò dal FE viene chiamato il servizio Insights-api e tramite la chiamata signContratct viene recuperato il template(ONE_PLATFORM_INSIGHT) del contratto per dare i consensi, vengono aggiunti i check sulle clausole e il tutto poi viene inviato ad L-CMS che si occupa di tenere una copia del contratto firmato e viene inviata una mail all'utente che riepiloga il contratto firmato. Una volta firmato il contratto viene chiamata l'api di attivazione del servizio activeService che scatena tutta la serie di eventi per far si che il servizio sia correttamente attivo e venga notificato il datalake di questa attivazione per iniziare a processare i dati dell'azienda così da poter calcolare gli insights.

Endpoint

DEV

https://insights-api-dev.agyo.io/swagger
https://ts-digital-insights-config-write-dev.agyo.io/swagger-ui/index.html
https://ts-digital-insights-config-read-dev.agyo.io/swagger-ui/index.html


TEST

https://insights-api-test.agyo.io/swagger
https://ts-digital-insights-config-write-test.agyo.io/swagger-ui/index.html
https://ts-digital-insights-config-read-test.agyo.io/swagger-ui/index.html


PROD

 

Api

Insights-api

*opzionale


 

[GET] /getCardList/{itemId}

Permette di recuperare la lista delle card di insights. 

  • itemId identificativo uuid dell'azienda.

 

[GET] /getKpiData/{kpiName}/{itemId}

Permette di recuperare i dati specifici per il singolo kpi.

  • kpiName nome del kpi per cui si vuole recuperare i dati.
  • itemId identificativo uuid dell'azienda.

 

[POST] /signContract

Permette di firmare il contratto per dare il consenso di trattare i dati di un azienda ai fine di poterli usare per analytics.

  • itemId identificativo uuid dell'azienda.
  • userId identificativo uuid dell'utente che sta firmando il contratto per conto dell'azienda.

 

[POST] /activeService

Permette di attivare il servizio di insights.

  • ownerId identificativo uuid dell'azienda owner del pacchetto.
  • itemId identificativo uuid dell'azienda.

 

[POST] /disableService

Permette di disattivare il servizio di insights.

  • ownerId * identificativo uuid dell'azienda owner del pacchetto. 
  • itemId identificativo uuid dell'azienda.

 

[GET] /getStatus/{itemId}/{ownerId}

Permette di recuperare le informazioni sul pacchetto di insights per una singola azienda. Con il parametro infoServiceName si possono recuperare dei conteggi aggiuntivi sul pacchetto.

  • ownerId identificativo uuid dell'azienda owner del pacchetto. 
  • itemId identificativo uuid dell'azienda.
  • infoServiceName * valori possibili:
    • CARD_NUMBER permette di recuperare il numero di insights disponibili.
    • SALES_INFO permette di recuperare l'incremento % di fatture ricevute e inviate rispetto l'anno precedente.
{
    "configInfo": {
        "id": 4,
        "itemId": "e6e530cc-8f98-4fc1-9017-cda412b51497",
        "ownerId": "e6e530cc-8f98-4fc1-9017-cda412b51497",
        "createdAt": "2023-04-20T13:22:18.947+00:00",
        "createdBy": "c34b9996-fb3f-4378-a9e5-fb180d8a5db9-WEBHOOK-INVOKER-INSIGHTS",
        "updatedAt": "2023-04-20T13:22:18.947+00:00",
        "updatedBy": "c34b9996-fb3f-4378-a9e5-fb180d8a5db9-WEBHOOK-INVOKER-INSIGHTS",
        "active": true,
        "readonly": false,
        "flows": [
            {
                "id": 4,
                "configId": 4,
                "flowId": "EIP",
                "createdAt": "2023-04-20T13:22:18.959+00:00",
                "createdBy": "c34b9996-fb3f-4378-a9e5-fb180d8a5db9-WEBHOOK-INVOKER-INSIGHTS",
                "updatedAt": "2023-04-20T13:22:18.959+00:00",
                "updatedBy": "c34b9996-fb3f-4378-a9e5-fb180d8a5db9-WEBHOOK-INVOKER-INSIGHTS",
                "active": true
            }
        ]
    },
    "status": "ACTIVE",
    "infoService": [
        {
            "name": "cardNumber",
            "value": 7,
            "type": "number"
        }
    ]
}

Ts-digital-insights-config-read



 

[GET] /api/v1/flows

Permette di recuperare la lista dei flussi disponibili.


 

[GET] /api/v1/flows/{flowId}

Permette di recuperare le informazioni di un singolo flusso.

  • flowId identificativo uuid dell'azienda.

 

[GET] /api/v1/config/{itemId}/{ownerId}

Permette di recuperare le info del config.

  • ownerId identificativo uuid dell'azienda owner del pacchetto. 
  • itemId identificativo uuid dell'azienda.

Ts-digital-insights-config-write


 

Flussi

Il servizio digital Insights una volta attivo permette di configurare differenti flussi su cui è configurato il servizio  come ad esempio:

flow_id (identificativo del flusso) flow description
EIP Digital Invoice
FLOW_2  
FLOW_3  

Esistono dei flussi che vengono attivati automaticamente all'attivazione del servizio.

Flussi di Notifica

Tramite il config è possibile configurare per ogni flusso una lista di endpoint a cui notificare l'attivazione del flusso di digital Insights. 

L'endpoint del servizio a cui il config dovrà inviare la notifica deve essere sviluppato nel seguente modo:

Protocollo REST
Metodo POST
Autenticazione Bearer JWT
Body della richiesta per notifiche sui flussi

{

"flowId": "String", 

"itemId": "String",

"ownerId": "String",

"action": "ENABLE_FLOW/DISABLE_FLOW",

}

Di seguito è presente una descrizione dei parametri passati nel body:

  • flowId: identificativo del flusso (es EIP per fatturazione)
  • itemId: azienda su cui è stato attivato il flusso
  • ownerId: azienda che paga il servizio Digital Insights

Gli endpoint messi a disposizione dovranno essere idempotenti, quindi dovranno gestire potenziali chiamate doppie (in caso di eventuali errori del sistema) .

Gli endpoint dovranno restituire le seguenti risposte

Status Code Body
200/202

{

"message":""

}

400/401/404/406/412/500/502

{

"code": "string",

"timeStamp": "2021-07-08T13:13:12.223Z",

"message": "string"

}

[documentazione parziale, ancora in fase di sviluppo]