API per gli sviluppatori

API per gli sviluppatori

Grazie alle API di Softvision Fidelity Card gli sviluppatori possono interfacciare le loro applicazioni/siti Web con i servizi offerti dalla nostra piattaforma. Le API possono essere utilizzate ad esempio per ottenere la lista dei clienti, l'elenco dei gruppi, per aggiungere, cancellare o modificare dei clienti e molto altro.

Elenco completo delle API disponibili

Tecnologie utilizzate

Per quanto riguarda l'autenticazione viene utilizzato il protocollo OAuth 2 con la modalità 3-legged OAuth, mentre le chiamate ai servizi avvengono in modalità REST.
Lo scambio di dati da e verso i servizi esposti avviene utilizzando i formati Json e XML ed il set di caratteri utf-8.

Formato dei dati

  • Valuta : viene usato il simbolo "." per separare i decimali. Esempio di formati validi sono i seguenti : 10.5 , 0.5 , 35.0 , 35
  • Data e ora : le api utilizzano il formato ISO 8601. Le date UTC sono scritte con la Z finale.
    Esempi :
    2012-07-27T18:51:45.53403Z // UTC
    2012-07-27T11:51:45.53403-07:00 // Locale

Registrazione dell'applicazione da realizzare

Per utilizzare i servizi lo sviluppatore dovrà effettuare una registrazione inviando una mail all'indirizzo info@softvision.it con i seguenti dati :

  • Nome e cognome / azienda.
  • Login utilizzato per accedere all'applicativo Softvision Fidelity Card.
In risposta lo sviluppatore riceverà due chiavi di accesso (client_id e client_secret) da utilizzare nella procedura di autenticazione OAuth2.

Utilizzo delle API

Vediamo ora più in dettaglio come utilizzare le API di Softvision Fidelity Card.
Il vostro applicativo dovrà innanzitutto ottenere un Token (stringa alfanumerica) dal nostro server. Questo Token, la cui validità è di 24 ore, dovrà essere poi inserito in ogni successiva richiesta di chiamata alle API.
Per ottenere il Token è necessario effettuare una chiamata al nostro server utilizzando il protocollo OAuth 2.
I parametri di cui avrete bisogno sono i seguenti :

  • client_id e client_sectret (forniti dalla Softvision dopo la registrazione dell'applicativo)
  • Authorization end point : https://fcapp.softvision.it/OAuth/Authorize
  • Token end point : https://fcapp.softvision.it/OAuth/Token
  • Scope : rappresenta i privilegi richiesti dall'applicativo. Può assumere i valori 'READ', 'WRITE' o 'READ WRITE'
  • Return url : è la url a cui si viene reindirizzati dopo la richiesta di inserimento delle vostre credenziali di accesso. Generalmente coincide con la pagina principale del vostro applicativo/sito web.

Il flusso dello operazioni è a grandi linee il seguente :
1) L'applicativo effettua una chiamata all'Authorization end point. All'utente viene richiesto di inserire le proprie credenziali di accesso del suo account Softvision Fidelity Card.
Al termine dell'operazione si viene reindirizzati all'url di ritorno del vostro applicativo.
2) L'applicativo richiede il Token con una chiamata al Token end point.
3) L'applicativo riceve il Token ed il Refresh Token. Il primo può essere utilizzato per 24 ore al termine delle quali è possibile ripetere le procedure 1) e 2) per ottenere un nuovo Token oppure è possibile utilizzare il Refresh Token per rinnovare la scadenza del Token originale.

Una volta ottenuto il Token possiamo effettuare le chiamate alle API effettuando delle richieste REST all'indirizzo fcapi.softvision.it.
Vediamo ad esempio una chiamata per ottenere la lista dei clienti del nostro account Softvision Fidelity Card.

Richiesta

GET https://fcapi.softvision.it/v1/customers HTTP/1.1
Accept: application/json
Content-type: application/json
Accept-Charset: UTF-8
Authorization: Bearer TOKEN


Risposta

HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8
Content-Length: 753
Date: Sat, 28 Apr 2012 13:19:40 GMT

[{"CustomerID":1276,"CardCode":"123864344365","FirstName":"Antonio","LastName":"Albanese","Address":"Via dei mille","City":"Roma",
"Province":null,"ZipCode":null,"DocumentIssuedBy":null,"BornDate":null,"RegistrationDate":"2012-08-27T16:04:00","DocumentIssuedDate":null,"DocumentNumber":null,"Country":null,"Telephone":null, "EMail":null,"MobilePhone":null,"TaxCode":null,"Note":null,"Description":null,"AllowProfiling":false,"Credit":700.0000,"DiscountCredit":0.0000,"Points":2660, "Male":false,"CustomersGroupID":24,"DocumentTypeID":0,"SMSSendType":0,"EMailSendType":0,"PresentedByCustomerID":null}, {"CustomerID":1277,"CardCode":"123864465","FirstName":"Antonio","LastName":"Rossi","Address":"Via roma","City":"Torino","Province":"To","ZipCode":"543434", "DocumentIssuedBy":null,"BornDate":null,"RegistrationDate":"2012-08-27T16:19:00","DocumentIssuedDate":null,"DocumentNumber":null,"Country":null,"Telephone":null, "EMail":null,"MobilePhone":null,"TaxCode":null,"Note":null,"Description":null,"AllowProfiling":true,"Credit":710.0000,"DiscountCredit":0.0000,"Points":2660, "Male":false,"CustomersGroupID":24,"DocumentTypeID":0,"SMSSendType":0,"EMailSendType":0,"PresentedByCustomerID":null}]



Elenco completo delle API disponibili

Esempi in ASP.Net e PHP

Sono disponibili due esempi completi (Asp.net e PHP) che mostrano come effettuare l'autenticazione OAuth 2 e come effettuare le chiamate alle API:

Esempio api php
Esempio Client PHP

Esempio api asp.net
Esempio Client ASP.Net