SDK IngressoDigitale per i tuoi linguaggi
Librerie native con API uniforme: startAuth, verifyToken, logout. Documentazione in italiano, esempi per i framework più diffusi.
Linguaggi supportati ufficialmente
PHP
composer require ingressodigitale/sdkPHP 7.4+ e 8.x, compatibilità anche con PHP 5.6 (versione legacy del pacchetto).
Node.js
npm install @ingressodigitale/sdkNode 16+, TypeScript types inclusi. Compatibile con Express, Fastify, NestJS.
Python
pip install ingressodigitalePython 3.8+. Pronto per Flask, Django, FastAPI.
Java
com.ingressodigitale:sdk:1.0Java 11+, Maven Central. Adattatori per Spring Boot, Quarkus.
.NET
dotnet add package IngressoDigitale.Sdk.NET 6+. Middleware ASP.NET Core pronto all\'uso.
Go
go get github.com/ingressodigitale/go-sdkGo 1.20+. Compatibile con net/http, gin, fiber.
Esempio minimo in PHP
require __DIR__ . '/vendor/autoload.php';
use IngressoDigitale\Client;
$client = new Client([
'tenant_id' => 'sp-mio-ordine',
'api_key' => getenv('ID_API_KEY'),
]);
// Inizio autenticazione (redirect su IngressoDigitale)
if ($_GET['action'] === 'login') {
header('Location: ' . $client->startAuth([
'level' => 'L2',
'attributes'=> ['fiscalNumber', 'name', 'familyName', 'email'],
'returnTo' => 'https://www.miosito.it/spid/callback',
]));
exit;
}
// Callback dopo autenticazione
if ($_GET['action'] === 'callback') {
$utente = $client->verifyToken($_GET['id_token']);
session_start();
$_SESSION['utente'] = $utente;
header('Location: /area-riservata/');
}
Esempio per Laravel
Esiste un service provider Laravel ufficiale che semplifica ulteriormente:
composer require ingressodigitale/laravel
php artisan vendor:publish --provider="IngressoDigitale\Laravel\ServiceProvider"
// routes/web.php
Route::get('/login', [\IngressoDigitale\Laravel\Controllers\AuthController::class, 'start']);
Route::get('/spid/callback', [\IngressoDigitale\Laravel\Controllers\AuthController::class, 'callback']);
// In un controller protetto:
public function areaRiservata()
{
$utente = auth()->user(); // utente già autenticato via SPID
return view('area', compact('utente'));
}
Per WordPress
Per chi ha un sito WordPress (CMS, blog di ordine o associazione) esiste un plugin ufficiale che aggiunge il bottone "Entra con SPID" alla schermata di login wp-login.php. Vedi la guida integrazione SPID su WordPress per dettagli.
Vuoi provare l'SDK?
Ti diamo credenziali sandbox in 5 minuti. Niente carta di credito.