Probabilmente l'avrete sentito un milione di volte, ma lo ripeterò. Solo le decisioni, sia tecniche che aziendali, che sono guidate e supportate da dati significativi, hanno le migliori possibilità di successo. Per consentire alle organizzazioni di adottare uno stile decisionale basato sui dati, le API diventano fondamentali in quanto fungono da interfaccia tra il consumatore di dati e una miriade di sistemi interni ed esterni. Pertanto, è importante che le organizzazioni definiscano e investano in una strategia API. Per definire una solida strategia API, è indispensabile porsi le giuste domande di qualificazione, come ho già sottolineato nel mio precedente post sul blog, per scoprire i presupposti e far progredire le iniziative di trasformazione digitale dell'azienda. Se rispondete affermativamente a una delle seguenti domande, allora dovreste fare di SnapLogic API Management, un'estensione di SnapLogic Intelligent Integration Platform, la vostra soluzione preferita:
- Avete bisogno di fornire API a un'ampia gamma di utenti, tra cui sviluppatori, specialisti dell'integrazione, architetti, integratori ad hoc e citizen integrator (utenti non tecnici esperti di business)?
- La vostra organizzazione ha problemi di integrazione complessi che richiedono l'automazione?
- Volete un'unica piattaforma unificata incentrata sulle API per gestire l'intero ciclo di vita delle API, dalla creazione alla gestione alla condivisione delle API?
- Desiderate ottimizzare la produttività garantendo un uso efficiente delle risorse?
L'implementazione del caso d'uso dell'integrazione è solo la prima parte di una soluzione in due parti. Il secondo aspetto, quello centrale, consiste nel trasformare l'implementazione in un'API e nel gestire queste API, per offrire un'esperienza migliorata ai consumatori dell'API, che possono essere utenti tecnici o aziendali. L'idea di sfruttare le API è quella di astrarre l'implementazione sottostante e di esporre solo le funzionalità che i consumatori delle API stanno cercando.
Il problema aziendale
Il volume di dati generati, trasformati e consumati cresce in modo esponenziale. Mentre alcuni di questi dati sono strutturati, la maggior parte è in formato non strutturato o semi-strutturato, il che porta a una maggiore varietà e complessità dei dati. Creare una tassonomia dei dati e imporre un formato comune potrebbe essere un buon modo per gestire la varietà dei dati, ma non sempre è possibile. Per risolvere questo problema, le organizzazioni investono in sistemi e tecnologie compatibili con il volume/varietà dei dati.
Tuttavia, questo investimento non fa altro che introdurre un problema ancora più grande, ovvero la presenza di numerosi silos di dati, il che significa che i dati risiedono in silos disconnessi come database, data lake, data warehouse, CRM, ERP, sistemi HCM e così via. Inoltre, la presenza di numerosi silos di dati comporta problemi di gestione dell'accesso ai dati e di incoerenza degli stessi, che possono portare ad analisi errate.
Ecco una visione di alto livello di come appare l'ecosistema aziendale, con il requisito chiave di consentire un efficace mezzo di interoperabilità tra gli ecosistemi interni ed esterni:
La sezione seguente evidenzia una soluzione in due parti per migliorare la produttività e l'esperienza degli sviluppatori (DX), riducendo al contempo il costo totale di proprietà per le varie iniziative di trasformazione digitale.
Soluzione in due parti
Parte 1: Integrazione
Il volume dei dati è in crescita esponenziale, così come i sistemi che li contengono. Con ogni sistema che offre un modo unico di accedere ai dati in suo possesso, e le API sono l'opzione più diffusa, diventa sempre più difficile per le aziende costruire un ecosistema digitale e connesso che possa beneficiare un ampio spettro di utenti.
SnapLogic offre una piattaforma completa e unificata che segue un paradigma basato sul visual designer per soddisfare i requisiti di integrazione delle aziende. Le organizzazioni possono interagire facilmente con i vari silos di dati, superando le sfide legate alle incoerenze delle API e alla mancanza di documentazione, e inserire i dati in un repository comune, universalmente accessibile in tutta l'organizzazione. In altre parole, questo è l'aspetto di integrazione della soluzione.
Parte 2: Gestione delle API
Ora che sono state sviluppate le integrazioni e le API, il cui obiettivo è quello di risolvere una varietà di casi d'uso, che vanno dalla migrazione dei dati tra e nei cloud pubblici alla migrazione bidirezionale dei dati tra applicazioni SaaS e implementazioni on-premise, è importante che gli sviluppatori di API adottino misure significative per consentire ai consumatori di API della loro organizzazione di trarre valore da queste API in modo self-service.
Entrate nella gestione delle API di SnapLogic. Qualsiasi integrazione costruita sulla piattaforma SnapLogic può essere facilmente trasformata in un'API e pubblicata sul gateway API. Al momento della pubblicazione delle API, gli sviluppatori SnapLogic hanno la possibilità di applicare una serie di criteri API, dalla sicurezza alla gestione del traffico. Gli sviluppatori di API, in base ai requisiti SLA e ai contratti API, possono avvolgere queste API come parte di un proxy API, prima di aprirle al consumo interno o inter-organizzativo.
Funzionalità chiave per la gestione delle API
- Gateway API: SnapLogic API Management consente la creazione di proxy API, che permettono di astrarre i servizi di backend dai consumatori di API. Sfruttando il gateway API, gli sviluppatori e gli amministratori di SnapLogic possono gestire facilmente i vari aspetti del ciclo di vita delle API. Ecco alcuni punti salienti:
- Gestione di API ibride
- API distribuite su Cloudplex (piano di esecuzione gestito da SnapLogic)
- API distribuite su Groundplex (piano di esecuzione gestito dal cliente)
- Protezione e sicurezza API
- Scopribilità delle API per i consumatori
- Flussi di autorizzazione basati su ACL per la richiesta di accesso all'API
- Autenticazione OAuth2
- Autenticazione di base
- Restrizione IP
- CORS
- Prestazioni API
- Strozzatura API
- Limitazione del tasso
- Progettazione e creazione di API
- Richiesta di trasformazione
- Risposta Trasformazione
- Monitoraggio API
- Utilizzo dell'API
- Latenza API
- Documentazione API: Documentazione completa conforme alle specifiche Open API 2.0.
- Gestione di API ibride
- Portale per gli sviluppatori (consumatori) di API: Fornisce un'esperienza senza attriti per i consumatori di API con funzionalità self-service per la scoperta e l'accesso alle API. Inoltre, semplifica notevolmente il lavoro di amministrazione per i gestori delle API, necessario per offrire una solida esperienza di integrazione delle API. Attraverso questo portale, gli sviluppatori, i consumatori, gli utenti tecnici e aziendali possono accedere facilmente a un repository API centrale per sfogliare, scoprire e consumare le API create nella piattaforma SnapLogic, attraverso un'interfaccia di ricerca intuitiva. Un'altra parte fondamentale di questa offerta è l'interfaccia integrata per il test delle API, che consente ai consumatori di API di convalidare rapidamente la funzionalità sottostante.
Nella prossima sezione, vi illustrerò un caso d'uso che prevede lo sviluppo di un'integrazione e l'esposizione dell'integrazione come API, per consentire agli amministratori di Marketing Operations (consumatori di API) di passare rapidamente dai dati al processo decisionale guidato dai dati.
Personaggi chiave:
- Anna, lo sviluppatore di API i cui obiettivi principali sono:
- Stabilire processi agili per lo sviluppo di API
- Adottare strumenti e tecnologie che soddisfino sia i principianti che gli sviluppatori esperti di API.
- Adam, l'amministratore dell'API, i cui obiettivi principali comprendono:
- Fornire un supporto dedicato ai team di sviluppo API
- Garantire che le API soddisfino gli SLA definiti come parte dei contratti API.
- Paul, il consumatore API i cui obiettivi primari sono:
- Fornire approfondimenti basati sui dati alla leadership del marketing.
Le sfide principali:
- Salesforce è il sistema di origine, ma l'accesso è limitato a pochi reparti a causa di vincoli di licenza.
- Il database Oracle è il sistema di destinazione e quindi la trasformazione dei dati in una rappresentazione relazionale è uno dei requisiti più critici.
- Senza la possibilità di riutilizzare le API, gli sviluppatori spendono le loro energie e il loro tempo lavorando su attività ridondanti; attività che potrebbero essere facilmente automatizzate attraverso un ambiente collaborativo incentrato sulle API. A causa della limitata esperienza di dominio che esiste intorno agli aspetti di progettazione delle API, sia da un punto di vista funzionale che di implementazione, la mancanza di funzionalità che promuovano la riutilizzabilità delle API è un'altra sfida prevalente.
La soluzione:
Poiché i dati sono rappresentati in modo univoco in Salesforce e Oracle, una soluzione potenziale per Anna, lo sviluppatore di API, è quella di creare prima un canale di integrazione tra i due sistemi sfruttando un livello di middleware come Kafka. L'immagine seguente evidenzia le parti principali del flusso di lavoro:
Come parte di questo flusso, ogni volta che un amministratore di Sales Operations crea un nuovo record in Salesforce, un trigger in uscita richiama un'API di SnapLogic, in particolare la "Message Producer API". mostrata nell'immagine sottostante. Questa API è stata progettata in modo tale da ricevere il payload XML in entrata da Salesforce e inviare una conferma a Salesforce che indica la ricezione del payload. Inoltre, l'API registrerà il payload XML per garantire che i dati di origine possano essere riprodotti e rivisti in caso di necessità di debug. Infine, l'API pubblicherà il messaggio sul topic Kafka specificato, oltre a contrassegnare l'opportunità Salesforce come "elaborata".
Successivamente, l'API "Message Consumer è stata progettata per consegnare i messaggi a un database Oracle, consumerà i messaggi dall'argomento Kafka e confermerà l'avvenuto consumo. Le fasi di pubblicazione e consumo possono essere rese sincrone o asincrone attraverso la progettazione dell'API. Infine, l'API formatta i dati in un record relazionale e inserisce il messaggio in una tabella Oracle predefinita.
Sfruttando SnapLogic API Management, Adam, l'amministratore API può gestire efficacemente queste API attraverso il gateway API, applicando policy API aggiuntive e pubblicandole facilmente sul gateway API, contribuendo così a fornire valore oltre a soddisfare gli SLA e altri obblighi contrattuali. Una volta pubblicate, le API possono essere rese accessibili sul portale API Developer con opzioni di autorizzazione avanzate per gestire e governare le richieste API, migliorando nel contempo le pratiche di sicurezza.
Infine, Paul, il consumatore di API, che non conosce l'esistenza di sistemi backend come Salesforce, Kafka e le pipeline/API di SnapLogic, può ricavare valore e dati dalla tabella Oracle invocando le API esposte attraverso il portale API Developer, in modo self-service e su richiesta.
Conclusione
Con la potenza di SnapLogic API Management, disponibile come parte della SnapLogic Intelligent Integration Platform, le organizzazioni possono facilmente costruire ecosistemi digitali per consentire un processo decisionale guidato dai dati in tutta l'azienda e possono eseguire efficacemente le iniziative di trasformazione digitale con un miglioramento dell'esperienza degli sviluppatori (DX), dell'esperienza dei clienti (CX), una maggiore produttività dei team e una riduzione del costo totale di proprietà (TCO).
Se desiderate vedere SnapLogic API Management in azione, potete richiedere una demo.