Autenticazione
Questa pagina copre l'autenticazione per la REST API e gli SDK, dove la credenziale è una chiave API. Vibedasher ha qui due livelli di accesso: l'API autenticata (una chiave API) e una piccola superficie pubblica, senza autenticazione.
Non hai bisogno di una chiave. Installa vibedasher-mcp (0.6.0 o versioni
successive) ed esegui vibedasher login — accesso via browser, sessione nel tuo
keyring del sistema operativo. Vedi
Crea con il tuo agente. Le chiavi API sono per gli
SDK, per il tuo stesso backend, e per macchine headless/CI dove non può aprirsi alcun
browser.
Chiave API (X-Api-Key)
L'API autenticata — dataset, SQL, visualizzazioni, connessioni e altro — si raggiunge
con una chiave API inviata nell'header X-Api-Key. È così che entrambi gli SDK si
autenticano, ed è così che il server MCP si autentica
su una macchina headless o CI (tramite VIBEDASHER_API_KEY, che ha la precedenza su
qualsiasi sessione di accesso salvata quando è impostata).
Ottieni una chiave
Genera una chiave nell'app sotto Impostazioni → Chiavi API su
cloud.vibedasher.com. La creazione della chiave è
deliberatamente solo per admin e solo tramite sessione browser: POST /v1/api-keys
richiede un admin dell'account autenticato attraverso l'app e rifiuta apertamente
l'autenticazione tramite chiave API, quindi non fa parte della superficie SDK e non la
troverai nel riferimento. Una chiave non può generarne un'altra, e un membro non admin
non può autoprovvisionarsene una — è proprio questo il punto.
Tratta una chiave come una password: porta con sé l'accesso al tuo account. Salvala in una variabile d'ambiente o in un secret store, mai nel controllo versione.
Inviala
curl https://api.vibedasher.com/api/v1/datasets \
-H "X-Api-Key: $VIBEDASHER_API_KEY"
Gli SDK ufficiali collegano questo header per te — passi semplicemente la chiave quando costruisci il client:
import { Vibedasher } from '@vibedasher/client';
const client = new Vibedasher({
apiKey: process.env.VIBEDASHER_API_KEY!,
});
const page = await client.datasets.list({ limit: 50 });
from vibedasher import Vibedasher
client = Vibedasher(api_key="<your-api-key>")
client.datasets.list()
Un solo host, instradato dalla tua credenziale
https://api.vibedasher.com/api è l'URL di base predefinito, ed è il solo indirizzo che devi
conoscere. L'edge che gli sta davanti legge la tua credenziale — il prefisso della tua
X-Api-Key, oppure la regione registrata dentro un token di sessione del browser — e
inoltra la richiesta alla regione che ospita i dati del tuo account. Il tuo codice non deve
mai dire dove si trovi. (region è opzionale da @vibedasher/client 4.1.5 e vibedasher
4.3.19.)
Ogni regione risponde anche sul proprio hostname, https://api.{region}.vibedasher.com/api.
Quegli indirizzi sono pienamente supportati e sono il modo per fissare un client a una
singola regione in modo deliberato: passa region a uno dei due SDK, oppure imposta l'URL
di base a mano. Una dashboard espulsa fa esattamente questo — registra l'host regionale
contro cui è stata costruita, così il bundle che distribuisci continua a interrogare lo
stesso posto.
Una richiesta che non porta alcuna credenziale — gli endpoint pubblici qui sotto, e ogni
preflight CORS — è servita dalla regione predefinita, eu-central-1.
Endpoint pubblici — senza autenticazione
Gli endpoint sotto /v1/public/* non richiedono alcuna autenticazione. Servono solo
contenuti che sono stati esplicitamente pubblicati e contrassegnati come pubblici:
curl https://api.vibedasher.com/api/v1/public/viz/slug/<slug>
I draft e le dashboard private restituiscono 404 — non c'è modo di leggere dati non
pubblicati attraverso la superficie pubblica.
Poiché queste chiamate non portano credenziali, l'edge non ha nulla su cui instradare, quindi raggiungono la regione predefinita. Se i dati del tuo account vivono altrove, indirizza la corsia pubblica all'hostname della tua regione.
Cosa non è mai esposto
L'infrastruttura pura e l'idraulica amministrativa sono completamente escluse dall'API — la gestione admin di cache/job/worker, i visualizzatori di AI-debug e osservabilità, l'analisi cross-account, il trasporto WebSocket, e l'invocazione diretta di funzioni. Questi alimentano l'app internamente e non fanno parte della superficie documentata.
Ti serve qualcosa che l'API non copre ancora? Contattaci tramite la pagina di contatto.