API: Service OPERATION

Il service OPERATION serve per l'esecuzione di operazioni INSERT, UPDATE e DELETE sul sistema dati centrale.

Il service in questione può essere richiamato tramite il seguente url:

https://api.gooseapp.com/operation/

La struttura dati JSON dovrà essere inviata tramite POST. Di seguito un'esempio di JSON di chiamata:

{
 code: "DEV001",
 key: "09mpada9nx4mxl3346055518sf89hcyga74mwmhucgf9j7cg78",
 operation: "UPDATE",
 table: "CON_TRO",
 id: "0-1",
 data: 
 {
   CORAS: "Example",
   COTEL: "+39 011 12930939"        
 }
}

Questa chiamata esegue un'operazione di UPDATE sulla tabella CON_TRO con RECORD_ID "0-1" modificando i campi CORAS e COTEL.

I parametri disponibili per la chiamate OPERATION sono i seguenti.

Nome

Tipo

Obbligatorio

Descrizione

code

varchar(6)

Yes 

Codice azienda

key

varchar(200)

Yes

Chiave API di sicurezza

operation

varchar(20)

Yes

Tipo di operazione:
  • INSERT (esegue l'inserimento di un record non esistente)
  • UPDATE (esegue un aggiornamento di un record già esistente)
  • UPDATE/INSERT (esegue un aggiornamento, nel caso il record non esista lo inserisce)
  • DELETE (esegue la cancellazione di un record esistente)

 

table

varchar(7)

Yes

Nome tabella 

id

varchar(25)

Yes/No

RECORD_ID interessato.
Questo parametro risulta obbligatorio solo per le operazioni di UPDATE e DELETE. Per le operazioni di INSERT può essere omesso. In tal caso sarà il sistema centrale ad assegnare una chiave RECORD_ID.

 

diff

true/false

No

Se specificato, solo su operation di tipo "UPDATE" o UPDATE/INSERT, verifica se presenti delle differenze sulla struttura "data" e notifica ai client l'eventuale sincronizzazione dei dati solo se necessario. Consigliato sull'aggiornamento di quei record su cui non si ha la certezza del fatto che sia avvenuta o meno una modifica rispetto alla sincronizzazione precedente.

data

structure

Yes/No

Struttura dati/valori interessata da inserimento o modifica. Questo dato è ignorato nel caso di operazioni di DELETE. Nel caso invece di operazioni di INSERT e UPDATE è obbligatorio.

Nel caso l'operazione eseguita vada a buon fine si ottiene il seguente JSON:

{
 status: "OK",
 result: 
 {
   operation: "UPDATE",
   table: "CON_TRO",
   id: "0-1"
 }
}

Di fatto il sistema indica che l'operazione di UPDATE sul record "0-1" della tabella CON_TRO ha avuto esito positivo.

In caso invece l'operazione non vada a buon fine si ottiene il seguente JSON:

{
 status: "error",
 error: 
 {
   code: "120",
   description: "Unknown column 'COTEL2' in 'field list'",
   query: "UPDATE client_goose_DEV001.CON_TRO SET CORAS=..."
 }
}

In caso di errore il parametro status viene restituito con valore "error" e nella struttura error vengono indicati il codice di errore, una descrizione dell'errore e la query eseguita.

Prova Gratuita
Amministrazione
Area Utenti
Sei già un nostro cliente? Accedi tramite tuo username e password.