Cosa sono le API (application programming interface)
AGID ha delineato un percorso di qualificazione per i fornitori Software as a service (Saas) della PA, affinchè le pubbliche amministrazioni possano adottare servizi Cloud omogenei e di qualità.
Le qualificazioni assicurano che i servizi SaaS per il Cloud della PA siano sviluppati e forniti secondo criteri minimi di affidabilità e sicurezza considerati necessari per i servizi digitali pubblici.
Uno dei parametri richiesti da AGID oltre l’esportabilità di tutti i dati in formato XLS, è l’interoperabilità dell’applicazione mediante opportune API.
Una delle modalità più diffuse per la commercializzazione di prodotti software è il SaaS (Software as a Service) che consente una completa fruibilità via web e l’installazione in ambiente cloud.
La fruibilità via web è resa possibile dalle Web API (Application Programming Interface) ovvero interfacce esposte sul web che permettono di scambiare dati tra un qualsiasi client e un’applicazione remota.
Per farla breve con le API il nostro gestionale di magazzino per gli istituti alberghieri si può interfacciare a qualsiasi altra applicazione della scuola.
Informazioni tecniche
Il modello architetturale comunemente usato nelle nostre Web API è il modello RESTful.
Il modello applicativo di Ipsar Food è quello di una Multi-tenant SaaS application
Le chiamate sono stateless, ovvero ogni richiesta non ha memoria delle precedenti e pertanto non viene gestita la sessione.
Il formato predefinito dei dati scambiati è JSON, ma è possibile esplicitare il formato desiderato (JSON o XML) indicandolo nell’URL. Se si desidera ad esempio ottenere il prodotto P10 in formato XML, occorre usare l’URL https://ipsarcloud.it/ipsarfood/Prodotto.xml/P10.
La pagina dove sono esposte le API è https://ipsarcloud.it/ipsarfood/$metadata
Tutte le nostre chiamate API richiedono una autenticazione dell’istituto tramite header per garantire la sicurezza delle operazioni.
Composizione degli url
L’URL delle chiamate a Web API è composto dalle parti descritte di seguito:
- percorso dell’applicazione (https://ipsarcloud.it/ipsarfood);
- nome della classe (Tag) comprensivo dell’eventuale namespace o package del componente. (esempio per gli articoli di magazzino https://ipsarcloud.it/ipsarfood/Articoli)
- eventuale formato desiderato; per esplicitare il formato occorre aggiungere al nome della classe la stringa .json o .xml (esempio per gli articoli di magazzino https://ipsarcloud.it/ipsarfood/Articoli.xml o https://ipsarcloud.it/ipsarfood/Articoli.json senza estensione il valore predefinito è JSON );
- valori della chiave primaria (PK) separati da barre per le richieste di lettura o eliminazione (ad esempio /P10/2010);
- criteri di ricerca per le richieste di ricerca o valori delle proprietà per le richieste di aggiornamento (ad esempio ?Year=2010&Supplier=2); le proprietà sono identificate dal corrispondente valore di Tag;
Tipologie di chiamate
Le tipologie di chiamate che si possono effettuare sono identificate dal metodo HTTP utilizzato come riportato nella tabella seguente:
Documentazione API di Ipsar Food per integrazione con altri software gestionali
L’interfaccia base del nostro programma consiste nell’alimentare e manutenere gli articoli di magazzino e le relative giacenze.
Vediamo come è possibile effettuare interrogazioni di magazzino ed inserimento modifica e cancellazione di articoli mediante WEB API
Per ulteriori informazioni tecniche contattateci pure a info@micropedia.it