Collegare Semaphore ai tuoi strumenti
Gestisci risorse, esegui task e workflow e recupera risultati tramite REST API. Collega gli eventi in ingresso con webhook.

Un’automazione in uno strumento separato interrompe il flusso
Portali, pipeline e strumenti guidano già il lavoro. Separare l’automazione comporta configurazioni ripetute, cambi di interfaccia e raccolta manuale dei risultati.
Un’API per configurazione ed esecuzione
Gestire Semaphore dai tuoi sistemi
Crea e aggiorna progetti, accessi e risorse di automazione tramite REST API. Sincronizza Semaphore con catalogo dei servizi, onboarding o strumenti infrastrutturali.
Un’API documentata per l’intera piattaforma
Configura risorse, gestisci accessi ed esamina lo stato. Le richieste usano i permessi dell’account autenticato. Il riferimento OpenAPI documenta parametri, corpi delle richieste e risposte.
Esplorare il riferimento APIAvviare l’automazione e seguirne il risultato
Per le chiamate REST crea un token API per un account con gli accessi necessari al servizio. Per i webhook crea un’integrazione, seleziona il Task Template e configura l’autenticazione.
Aggiungi l’URL webhook al sistema che invia l’evento. Seleziona gli eventi desiderati e associa i campi del payload agli input del task. Un’integrazione REST diretta può chiamare l’API senza webhook.
Chiama l’endpoint dei task con l’ID di un Task Template salvato oppure usa la Workflow API Pro per avviare una sequenza completa con dipendenze e approvazioni. Conserva l’ID restituito per seguirne l’avanzamento.
Conserva l’ID restituito del task o workflow. Leggi stato e output tramite API per consentire a portale, pipeline o servizio di seguire il risultato.
Collegare gli strumenti alla stessa automazione
Opzioni di integrazione REST API e webhook
Instradare gli eventi al job corretto
Usa un alias webhook di progetto per valutare regole e scegliere job compatibili. Un alias specifico chiama direttamente l’integrazione e ne salta le regole. Confronta repository, ramo o evento quando più sistemi condividono l’endpoint e testa richieste compatibili e non.
Associare payload degli eventi agli input
Leggi header o campi del corpo con estrattori e associali a valori d’ambiente o parametri supportati. Passa versione, nome del servizio o riferimento senza ricostruire il job. Le mappature devono corrispondere ai campi esposti dal Task Template.
Autenticare chiamate API e webhook in ingresso
Le chiamate REST API usano un token personale e i permessi del relativo account Semaphore. I webhook hanno impostazioni di autenticazione proprie, inclusi GitHub e Bitbucket, Token, HMAC SHA-256 o SHA-512 e BasicAuth. Configura il metodo supportato dal mittente e separa le credenziali della richiesta da quelle infrastrutturali del job.
Gestire Semaphore dai tuoi sistemi
La REST API copre progetti, repository, inventari, credenziali, Variable Groups, Task Template, pianificazioni e integrazioni, oltre a esecuzione e Workflow API Pro. Prepara le risorse dal servizio, avvia l’operazione e leggi stato e output. OpenAPI documenta parametri, richieste e risposte.
Seguire il task creato dalla richiesta
Un task creato è un’esecuzione in coda, non conclusa. Conserva l’identificativo restituito dall’API e interroga gli endpoint documentati per stato e output, così il servizio distingue errori di richiesta, esecuzioni in attesa e risultati finali e può indirizzare un tecnico alle evidenze reali. Non presumere garanzie di consegna: un servizio a monte può riprovare dopo un timeout anche se la prima richiesta è arrivata. Gestisci quindi i duplicati quando l’operazione ha conseguenze e rendi l’automazione idempotente. L’invio dei risultati a chat o e-mail è una funzionalità distinta.
Collegare GitHub, Bitbucket e altre fonti di eventi
Le integrazioni supportano autenticazione webhook GitHub e Bitbucket, token, HMAC SHA-256 o SHA-512 e Basic Auth. Confronta header o campi ricevuti ed estrai i valori necessari al job salvato. Usa REST API se il chiamante deve anche consultare risultati o gestire risorse.
Documentazione e funzionalità correlate
FAQ
Devo usare la REST API o un webhook per avviare un job?
Usa webhook quando un evento deve selezionare un Task Template predefinito e associare valori agli input accettati. Usa REST API per un flusso esplicito di gestione ed esecuzione, come avviare e leggere stato. In entrambi i casi l’automazione segue il modello configurato. Scegli in base a cosa il chiamante deve inviare e seguire.
Qual è la differenza tra alias di progetto e specifici?
Un alias di progetto valuta le regole di corrispondenza configurate nelle sue integrazioni e può avviare quelle compatibili con la richiesta. Un alias specifico indirizza direttamente una sola integrazione senza valutarne le regole. È importante se una regola su ramo o tipo di evento deve controllare l’esecuzione. Scegli l’endpoint consapevolmente e testa payload corrispondenti e non corrispondenti, senza presumere che lo stesso filtro valga per ogni percorso alias.
Come può un webhook passare una versione o un valore d’ambiente?
Configura gli estrattori per leggere header o campi del corpo rilevanti e associarli a valori d’ambiente o parametri documentati. Le destinazioni dei parametri devono corrispondere ai campi accettati dal modello. Mantieni la mappatura specifica: una versione deve diventare l’input previsto, non un frammento di comando senza limiti. Valida il valore nell’automazione quando il suo significato lo richiede e testa campi mancanti o inattesi prima della produzione.
Quale identità e permessi usa una richiesta API?
Un token API agisce con i permessi del suo utente Semaphore. Usa un’identità con accesso ai progetti coerente con le operazioni previste e proteggi il token ovunque venga conservato dal chiamante. L’API non aggira le autorizzazioni di progetto. Per i webhook configura anche autenticazione documentata ed esposizione dell’endpoint in modo deliberato. Separa l’autenticazione del chiamante dalle credenziali usate dal task per raggiungere l’infrastruttura.
Come deve seguire il task il mio servizio dopo l’avvio?
In un flusso REST API conserva l’identificativo restituito dall’operazione documentata e usa i metodi corrispondenti per stato e output. Una richiesta riuscita indica che l’esecuzione è stata richiesta, non che il lavoro infrastrutturale è riuscito. Il servizio deve distinguere errori di richiesta, task in attesa o attivi e risultati conclusi. Collega i tecnici al task per analizzare le evidenze effettive.
I nuovi tentativi dei webhook garantiscono una sola esecuzione del job?
Non presumere esecuzione esattamente una volta o garanzie di consegna durevole. Un servizio esterno può riprovare dopo un timeout anche se la prima richiesta ha raggiunto Semaphore. Progetta gestione dei duplicati e tentativi in base alle conseguenze e rendi l’automazione idempotente dove opportuno. Conserva la correlazione tra evento originale ed esecuzione seguita dal servizio per comprendere consegne ripetute o incerte.
Dove trovo la specifica API Semaphore?
Il riferimento mostra il documento Swagger/OpenAPI pubblicato con la release Semaphore: operazioni, percorsi e schemi corrispondono a una versione precisa, non a un riepilogo manuale. Consultalo per risorsa in /api-docs/ o leggi il documento grezzo per generare un client. Controlla la specifica della versione realmente usata perché endpoint e schemi cambiano tra release.
Un’integrazione webhook richiede un endpoint esposto a Internet?
Il chiamante deve raggiungere Semaphore, ma non necessariamente da Internet pubblico. Rete privata, VPN o bilanciatore interno bastano se il chiamante vi opera. I nostri test di regole ed estrattori usavano un listener solo loopback senza autenticazione, non adatto a endpoint esposti. Se l’alias è raggiungibile fuori dalla rete fidata, configura autenticazione supportata e limita l’esposizione anche in rete.
Come testo un’integrazione prima di collegare un sistema reale?
Punta prima l’integrazione a un Task Template innocuo e invia i payload con curl o un client HTTP. Invia un corpo non corrispondente e verifica che non appaia un task; poi uno corrispondente e verifica un solo avvio. Apri Details: registra l’integrazione come origine e rende visibili i valori estratti. È la stessa sequenza usata localmente e rileva una chiave errata prima che un servizio esterno ne dipenda.
Posso gestire risorse Semaphore ed eseguire workflow tramite API?
Sì. La REST API copre progetti, repository, inventari, credenziali, Variable Groups, Task Template e altre risorse. Portale o servizio possono configurarli, avviare task e leggere output e stato. Pro espone anche workflow e approvazioni, quindi una pipeline CI/CD avvia operazioni complete. Usa il riferimento OpenAPI per parametri e schemi.
