Microsoft-Graph-API-Developer-Integration-Guide-2025 MSLicenze

Microsoft Graph API: Developer Integration Guide 2025

Introduzione: Un API per Tutte le Cose Microsoft  

Nel 2025, Microsoft Graph è lo standard unificato per accedere a TUTTI i dati Microsoft 365: email, calendar, contacts, files, groups, users, devices. Invece di 10 API diverse, usi UNO. REST semplice, security forte, documentazione eccellente.

💡 Dato 2025: Il 80% delle integrazioni M365 usano Graph API. È diventato lo standard industry.

Cos'è Microsoft Graph?

Microsoft Graph è un unified REST API endpoint che ti permette leggere e scrivere dati da Microsoft 365. Un singolo endpoint ti da accesso a email, calendar, contacts, files, groups, sites, teams, devices, security alerts—tutto.

Che Dati Puoi Accedere con Graph?

Categoria Dati Accessibili Uso Comune
Mail Email, mailbox folder, send mail Integrazione CRM: leggi email automaticamente
Calendar Events, availability, booking App booking: verifica disponibilità
Contacts People directory, contact details Sincronizza contatti con app terza
OneDrive/SharePoint Files, folders, permissions Backup app: scarica file automaticamente
Teams Channels, messages, files Chatbot che legge messaggi Teams
Users/Groups User directory, group membership Sync Active Directory con app custom
Security Alert, incident, threat data SIEM: invia alert di sicurezza a SOC

Casi d'Uso Reali di Graph API

📧 Caso 1: CRM Integration - Leggi Email Automaticamente

Scenario: Quando cliente manda email a sales@azienda.it, app automaticamente legge email via Graph API e crea lead nel CRM.

Codice (Pseudo):

GET https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages
Response: [ email1, email2, email3 ]
Loop: Per ogni email, estrai sender + subject → POST al CRM

Beneficio: Nessun data entry manuale. Leads creati in tempo reale.

📅 Caso 2: Booking App - Verifica Disponibilità Calendar

Scenario: App booking esterno (es: PrenotaMe) accede calendar Teams/Outlook per trovare slot liberi.

Codice (Pseudo):

GET https://graph.microsoft.com/v1.0/me/events?$filter=start/dateTime gt '2025-11-26'
Response: [ evento1, evento2 ]
Logica: Trova slot 30min liberi → Mostra in booking app

Beneficio: Clienti prenota slot automaticamente senza email back-and-forth.

👥 Caso 3: Sync Active Directory - Sincronizza Utenti

Scenario: App custom legge utenti da Azure AD (via Graph) e sincronizza a database interno.

Codice (Pseudo):

GET https://graph.microsoft.com/v1.0/users?$select=id,displayName,mail
Response: [ user1, user2, user3 ]
Loop: INSERT INTO app_database (azure_id, name, email)

Beneficio: Utenti app sempre sincronizzati con Azure AD. No stale data.

Come Iniziare con Graph API: 6 Step

  1. Registra app in Azure AD Portal
    • Vai portal.azure.com → App Registrations
    • Crea "New registration"
    • Nome: "My Custom App"
  2. Ottieni Credentials
    • Copy Client ID (application ID)
    • Create Client Secret (password)
    • Salva in file sicuro (no GitHub!)
  3. Richiedi Permessi API
    • Vai "API Permissions"
    • Aggiungi "Mail.Read", "Calendar.Read", etc.
    • Admin must consent (richiedi IT admin approvazione)
  4. Autentica (OAuth2)
    • Usa credentials per ottenere token di accesso
    • Token valido 1 ora (poi refresh)
  5. Fai REST Calls
    • GET https://graph.microsoft.com/v1.0/me/messages (leggi email)
    • POST ... (crea nuovo evento)
  6. Testa e Pubblica
    • Test in development environment
    • Pubblica in production

Linguaggi Supportati per Graph API

  • JavaScript/Node.js: npm install @microsoft/microsoft-graph-client
  • Python: pip install msgraph-core
  • C#/.NET: NuGet package Microsoft.Graph
  • Java: Maven dependency com.microsoft.graph:microsoft-graph
  • REST Raw: Curl, Postman (no SDK needed)

Best Practices Graph API

  • ✓ Mai commit credentials in code. Usa environment variables o KeyVault
  • ✓ Implementa error handling: token expired, rate limiting, permissi insufficienti
  • ✓ Usa pagination: Graph restituisce max 100 items. Implementa loop per più pagine
  • ✓ Cache data quando possibile: evita chiamate ripetute same resource
  • ✓ Monitora rate limiting: Microsoft limita 2.000 requests/minuto. Implementa backoff
  • ✓ Log API calls per debugging
  • ✓ Test permissions: verifica app ha permessi corretti prima di deployment

Costi e Limitazioni

  • Costo: Gratis! Microsoft Graph è free per tutti M365 subscriber
  • Rate Limiting: 2.000 requests/minuto per app
  • Permessi: App può accedere solo quello che admin approva
  • SDK Versioning: API v1.0 stabile, /beta per features nuove (ma unstable)

Domande Frequenti (FAQ)

D: Posso usare Graph API da JavaScript client-side?

Non direttamente (CORS issues). Devi passare da server backend. Ma Microsoft ha SDK browser (MSAL) per auth, poi backend chiama Graph.

D: Se cambio password Microsoft 365, l'app continua a funzionare?

Sì, perché Graph usa OAuth token, non password. Token refresh automatico, app continua.

D: Quale è la differenza tra Graph API e Office JavaScript SDK?

Graph API = accedi dati M365 da qualsiasi app/server. Office SDK = accedi da dentro Word/Excel/Outlook add-in. Use cases diversi.

D: Su mslicenze.it potete sviluppare app con Graph API?

Sì! Offriamo custom app development, Graph API integration, training team. Contattaci.

Conclusione: Graph API è il Future di M365 Integration

Nel 2025, Microsoft Graph è lo standard unificato per accedere Microsoft 365. Se devi integrare M365 con app terza, CRM, o creare automazioni custom, Graph è la risposta. Costo zero, documentazione eccellente, scalabilità illimitata. Contatta mslicenze.it per consulenza Graph API.

Torna al blog