Blu Pantheon
Referencia de API

API Blu Pantheon

Introduzione alle API REST di Blu Pantheon: ambienti, versionamento, convenzioni e primo esempio funzionante.

Le API di Blu Pantheon sono API REST su HTTPS, con payload JSON e autenticazione tramite token Bearer. Ogni funzione disponibile nella Console è esposta anche via API: puoi automatizzare l'onboarding degli utenti, sincronizzare anagrafiche clienti, leggere conversazioni e statistiche, gestire prenotazioni e consultare consumi e fatture.

Cosa puoi fare

Ambienti e base URL

AmbienteBase URLUso previsto
Produzionehttps://api.blupantheon.comTraffico reale, dati di clienti reali
Staginghttps://api.staging.blupantheon.comVerifiche pre-rilascio con dati anonimizzati
Sandboxhttps://api.sandbox.blupantheon.comSviluppo e test di integrazione, dati sintetici

Ogni servizio è raggiungibile tramite un prefisso dedicato:

PrefissoServizioAmbito
/identity/v1IdentityAutenticazione, utenti, tenant, ruoli, chiavi API
/billing/v1BillingAbbonamenti, consumi, fatture
/booking/v1BookingDisponibilità, prenotazioni
/console/v1ConsoleSessioni, clienti, progetti, knowledge base, statistiche

Un solo host, più servizi

Non esistono host separati per servizio: il routing avviene sul path. La chiamata GET https://api.blupantheon.com/console/v1/sessions e GET https://api.blupantheon.com/identity/v1/me usano lo stesso host e la stessa credenziale.

Versionamento

La versione maggiore è espressa nel path (/v1). Le modifiche retrocompatibili — nuovi campi in risposta, nuovi valori enum documentati come estendibili, nuovi endpoint — vengono rilasciate senza cambiare la versione.

Le modifiche non retrocompatibili comportano una nuova versione maggiore (/v2) e seguono questa politica:

Annuncio

La deprecazione viene comunicata via email agli amministratori del tenant e pubblicata nel changelog, con almeno 12 mesi di preavviso.

Periodo di convivenza

/v1 e /v2 restano attive contemporaneamente. Le risposte degli endpoint deprecati includono gli header Deprecation e Sunset con la data di dismissione in formato HTTP-date.

Dismissione

Dopo la data indicata in Sunset l'endpoint risponde 410 Gone con codice ENDPOINT_REMOVED.

Puoi fissare esplicitamente la revisione minore inviando l'header X-BP-Api-Version con una data:

curl https://api.blupantheon.com/identity/v1/me \
  -H "Authorization: Bearer bp_live_xxxxxxxxxxxxxxxx" \
  -H "X-BP-Api-Version: 2026-09-01"

Se l'header è assente viene usata la revisione più recente compatibile con /v1.

Convenzioni

  • Formato: richieste e risposte in application/json, codifica UTF-8. Il Content-Type è obbligatorio su tutte le richieste con body.
  • Nomi dei campi: camelCase sia in input sia in output (createdAt, projectId, nextCursor).
  • Date e orari: ISO 8601 con fuso orario esplicito, sempre in UTC nelle risposte (2026-09-04T10:32:15.482Z). In input sono accettati anche offset locali (2026-09-04T12:32:15+02:00).
  • Identificatori: stringhe opache con prefisso tipizzato (usr_4a7b1e90, sess_9f2c8d41, bp_proj_7f3a9c21). Non fare assunzioni su lunghezza o alfabeto.
  • Importi: interi in centesimi con codice valuta ISO 4217 separato ({ "amount": 12900, "currency": "EUR" }).
  • Idempotenza: tutte le scritture accettano l'header Idempotency-Key. Vedi Endpoint.
  • Paginazione: basata su cursore. Vedi Paginazione.
  • Errori: envelope strutturato con code, title, message, traceId. Vedi Errori.

Hello World

L'esempio seguente autentica una chiamata con una chiave API e legge il profilo associato all'endpoint GET /identity/v1/me.

Prima di iniziare

  • Una chiave API attiva creata dalla Console
  • Accesso in uscita verso api.blupantheon.com sulla porta 443
  • Runtime aggiornato con supporto TLS 1.2 o superiore
curl -sS https://api.blupantheon.com/identity/v1/me \
  -H "Authorization: Bearer bp_live_xxxxxxxxxxxxxxxx" \
  -H "Accept: application/json"

Risposta:

200 OK
{
  "id": "usr_4a7b1e90",
  "email": "mario.rossi@acme.it",
  "firstName": "Mario",
  "lastName": "Rossi",
  "status": "active",
  "roles": ["tenant_admin"],
  "tenant": {
    "id": "tnt_2b8e4f11",
    "slug": "acme",
    "name": "ACME S.p.A."
  },
  "createdAt": "2025-11-14T09:21:03.117Z",
  "updatedAt": "2026-08-30T16:04:55.902Z"
}

Non esporre le chiavi

Le chiavi bp_live_... non devono comparire in codice frontend, repository Git, log applicativi o richieste effettuate dal browser. Usale solo da backend o da processi server-to-server.

Continua

En esta página