API
API HTTP per progetti, app e il resto della piattaforma.
Ogni risorsa che vedi nella dashboard ha un endpoint HTTP. Usalo dalla CLI, in CI, da script o da qualsiasi client in grado di inviare JSON.
- URL base:
https://api.nodion.com - Documentazione interattiva: api.nodion.com/v2/docs
- OpenAPI: api.nodion.com/v2/openapi.yaml
Autenticazione
Invia un bearer token in ogni richiesta:
httpAuthorization: Bearer nodion_… Esistono due tipi di token:
-
Le chiavi API personali (
nodion_…) agiscono a tuo nome. Scegli gli scope e puoi limitare la chiave a progetti specifici. Creale in Account → Security. Il token viene mostrato una sola volta. -
Le chiavi di progetto (
nodion_proj_…) appartengono a un progetto, non a una persona, così la CI continua a funzionare quando qualcuno se ne va. Creale nella scheda API keys del progetto.
Scope di una chiave personale:
read: elencare e leggere le risorsewrite: creare, modificare ed eliminaredeploy: avviare i deployenv:read/env:write: valori delle variabili d'ambientelogs:read: log delle applicazioni
Le letture richiedono read, le scritture write, a meno
che un'operazione non chieda uno scope più ristretto (ad esempio deploy).
Le chiavi di progetto non hanno scope: possono fare tutto in quel progetto.
Fatturazione e 2FA restano nella dashboard; le chiavi API non possono accedervi.
Scegli un progetto
Le route annidate hanno la forma /v2/projects/{id}/….
Se lavori in un solo progetto, usa il percorso breve e invia l'ID del progetto
come header:
httpX-Nodion-Project: prj_… Prima richiesta
bashcurl https://api.nodion.com/v2/applications \
-H "Authorization: Bearer $NODION_TOKEN" \
-H "X-Nodion-Project: $NODION_PROJECT" Avvia un deploy (richiede lo scope deploy su una chiave personale):
bashcurl -X POST https://api.nodion.com/v2/applications/$APP_ID/deployments \
-H "Authorization: Bearer $NODION_TOKEN" Liste, errori e limiti
Le risposte agli elenchi hanno la forma
{ "data": [ … ], "next_cursor": null }.
Per paginare passa ?limit= e il next_cursor precedente
come ?cursor=.
Gli errori usano RFC 9457 (application/problem+json) con un
code stabile e un request_id. Comunica quell'ID al
supporto. Il catalogo pubblico è GET /v2/errors.
Le chiamate autenticate con una chiave hanno un rate limit per account. Le risposte includono
RateLimit-Limit, RateLimit-Remaining e
RateLimit-Reset. Una risposta 429 include anche
Retry-After. Ogni risposta ha X-Request-Id.
Per i body delle richieste e una console per provarle, usa la documentazione interattiva. Le pagine qui sotto mostrano gli stessi endpoint, nello stile di questo sito.
Endpoint
Generati dal documento OpenAPI pubblico. 278 operazioni, raggruppate come nella specifica.
Identità
Valida un token, individua i progetti a cui puoi accedere ed elenca i codici di errore. 4 endpoint.
Progetti
I progetti contengono tutte le altre risorse. 7 endpoint.
Applicazioni
Applicazioni pronte per il deploy, con impostazioni, log e metriche. 19 endpoint.
Anteprime
Ambienti di anteprima temporanei per un branch o una pull request. 5 endpoint.
Variabili d'ambiente
Variabili d'ambiente delle applicazioni. 3 endpoint.
Deployment
Deploy con build ed esecuzione, e deploy automatici. 7 endpoint.
Processi
I tipi di processo di un'applicazione e il loro scaling. 6 endpoint.
Cron job
Comandi pianificati eseguiti una volta per ogni scadenza sulla release attiva di un'applicazione. 9 endpoint.
Domini
Domini personalizzati per le applicazioni. 8 endpoint.
Database
Database gestiti, repliche, endpoint e collegamenti. 43 endpoint.
Volumi
Volumi per lo storage persistente. 11 endpoint.
Object storage
Bucket S3 e chiavi di accesso. 27 endpoint.
Domini registrati
5 endpoint.
DNS
Zone DNS autoritative e record. 23 endpoint.
CDN
Zone CDN, domini personalizzati e svuotamento della cache. 16 endpoint.
Domini di invio email e zone relay. 21 endpoint.
Observer
Monitor dell'uptime e delle metriche con notifier. 16 endpoint.
Integrazioni
Integrazioni con provider Git e repository condivisi. 25 endpoint.
Registry
Container registry di Nodion e account robot per ogni progetto. 11 endpoint.
AI
Catalogo dei modelli e utilizzo per progetto. L'inferenza vera e propria è l'API separata compatibile con OpenAI. 3 endpoint.
Dati di riferimento
Cataloghi in sola lettura (regioni, pacchetti, motori di database, preset). 9 endpoint.