Conecte o Semaphore às suas ferramentas
Gerencie recursos, execute tarefas e workflows e obtenha resultados pela REST API. Conecte eventos recebidos com webhooks.

Automação em uma ferramenta separada interrompe o fluxo
Seus portais, pipelines e ferramentas já conduzem o trabalho. Separar a automação exige repetir configurações, trocar interfaces e coletar resultados manualmente.
Uma API para configuração e execução
Gerencie o Semaphore pelos seus próprios sistemas
Crie e atualize projetos, acesso e recursos de automação pela REST API. Mantenha o Semaphore sincronizado com catálogo de serviços, processo de integração de pessoas ou ferramentas de infraestrutura.
Uma API documentada para toda a plataforma
Configure recursos, gerencie acesso e inspecione estado. As solicitações usam as permissões da conta autenticada. A referência OpenAPI documenta parâmetros, corpos de solicitação e respostas.
Explore a referência da APIDispare automação e acompanhe o resultado
Para chamadas REST, crie um token de API para uma conta com o acesso ao projeto necessário ao serviço. Para webhooks recebidos, crie uma integração, selecione seu modelo de tarefa e configure a autenticação da solicitação.
Adicione a URL do webhook ao sistema que envia o evento. Selecione os eventos desejados e mapeie os campos do payload para as entradas da tarefa. Uma integração REST direta pode chamar a API sem webhook.
Chame o endpoint de tarefas com o ID de um modelo de tarefa salvo ou use a Pro Workflow API para iniciar uma sequência completa com dependências e aprovações. Guarde o ID de execução retornado para acompanhar o progresso.
Guarde o ID retornado da tarefa ou execução do workflow. Leia status e saída pela API para seu portal, pipeline ou serviço de infraestrutura acompanhar o resultado.
Conecte suas ferramentas à mesma automação
Opções de integração REST API e webhook
Direcione eventos recebidos ao trabalho certo
Use um alias webhook de projeto para avaliar critérios de integração e selecionar trabalhos que aceitam o evento. Um alias específico chama uma integração diretamente e ignora seus critérios. Compare repositório, branch ou campos de evento quando sistemas compartilham endpoint e teste solicitações correspondentes e não correspondentes.
Mapeie payloads de eventos para entradas de execução
Leia cabeçalhos ou campos do corpo com extratores e mapeie para valores de ambiente ou parâmetros de tarefa compatíveis. Passe valores como versão de release, nome de serviço ou referência da solicitação sem recriar o trabalho salvo. Os mapeamentos de parâmetros devem corresponder às entradas que o modelo expõe.
Autentique chamadas de API e webhooks recebidos
Chamadas REST API usam um token pessoal e as permissões da conta Semaphore correspondente. Integrações webhook têm autenticação própria, incluindo webhooks GitHub e Bitbucket, Token, HMAC SHA-256 ou SHA-512 e BasicAuth. Configure o método suportado pelo emissor e separe as credenciais da solicitação das credenciais de infraestrutura do trabalho.
Gerencie o Semaphore pelos seus próprios sistemas
A REST API abrange projetos, repositórios, inventários, credenciais, grupos de variáveis, modelos, agendamentos e integrações, além de execução e Pro Workflow API. Provisione recursos pelo serviço, inicie uma operação configurada e leia status e saída. A referência OpenAPI documenta parâmetros, corpos e esquemas de resposta.
Acompanhe a tarefa criada pela solicitação
Uma tarefa criada é uma execução na fila, não uma execução concluída. Guarde o identificador retornado pela API e consulte periodicamente os endpoints documentados de tarefas para obter o status e a saída. Assim, seu serviço distingue um erro de solicitação, uma execução aguardando e um resultado concluído, além de encaminhar o engenheiro diretamente às evidências reais. Não presuma o comportamento da entrega: um serviço de origem pode tentar novamente após um tempo limite, mesmo que a primeira solicitação tenha chegado. Portanto, trate duplicidades quando a operação tiver consequências e torne a automação idempotente. Enviar resultados para chat ou e-mail é uma capacidade separada.
Conecte GitHub, Bitbucket e outras fontes de eventos
Integrações oferecem autenticação de webhooks GitHub e Bitbucket, tokens, HMAC SHA-256 ou SHA-512 e Basic Auth. Compare cabeçalhos ou campos do corpo recebidos e extraia os valores necessários ao trabalho salvo. Use a REST API quando o chamador também precisar inspecionar resultados ou gerenciar recursos.
Documentação e recursos relacionados
FAQ
Devo usar REST API ou integração webhook para iniciar um trabalho?
Use webhook quando um evento externo deva selecionar modelo predefinido e mapear valores para entradas aceitas. Use REST API para um fluxo mais explícito de recursos e execução, como iniciar tarefa e ler status. Em ambos, a automação usa o modelo de execução configurado do Semaphore. Escolha pelo que o chamador precisa enviar e acompanhar.
Qual a diferença entre aliases de projeto e específicos de integração?
Um alias de projeto avalia os critérios de correspondência configurados nas suas integrações e pode iniciar aquelas que correspondem à solicitação. Um alias específico de integração direciona a solicitação a uma única integração, sem avaliar seus critérios. Essa diferença importa quando você espera que uma regra de branch ou tipo de evento controle a execução. Escolha o endpoint deliberadamente e teste payloads correspondentes e não correspondentes, em vez de presumir que o mesmo filtro se aplica a todos os caminhos de alias.
Como um webhook passa uma versão de release ou valor de ambiente?
Configure extratores para ler cabeçalhos ou campos do corpo relevantes e mapeá-los para valores de ambiente ou parâmetros documentados da tarefa. Os destinos de parâmetros devem corresponder às entradas aceitas pelo modelo. Mantenha o mapeamento específico: uma versão de release deve se tornar a entrada pretendida, não um fragmento irrestrito de comando. Valide o valor na automação quando seu significado exigir e teste campos ausentes ou inesperados antes do uso em produção.
Que identidade e permissões uma solicitação API usa?
Um token de API atua com as permissões do seu usuário Semaphore. Use uma identidade cujo acesso ao projeto corresponda às operações pretendidas pela integração e proteja o token onde o chamador o armazena. A API não contorna a autorização do projeto. Para integrações por webhook, configure deliberadamente também a autenticação documentada da solicitação e a exposição do endpoint. Separe a autenticação do chamador das credenciais que a tarefa resultante usa para acessar a infraestrutura.
Como meu serviço acompanha uma tarefa depois de iniciá-la?
Em um fluxo REST API, retenha o identificador de tarefa retornado pela operação documentada e use os métodos correspondentes para inspecionar estado e saída. Uma solicitação bem-sucedida significa que a execução foi solicitada, não que o trabalho de infraestrutura terminou com sucesso. Seu serviço deve distinguir erros de solicitação, tarefas aguardando ou em execução e resultados concluídos. Encaminhe engenheiros à tarefa quando precisarem investigar as evidências reais de execução.
As novas tentativas de um webhook garantem que o trabalho execute apenas uma vez?
Não presuma execução exatamente uma vez nem garantias de entrega durável. Um serviço externo pode repetir uma solicitação após tempo limite mesmo quando a primeira chegou ao Semaphore. Projete o tratamento de duplicidades e as decisões de nova tentativa conforme as consequências da operação e torne a automação subjacente idempotente quando adequado. Mantenha uma correlação entre o evento de origem e a execução acompanhada pelo serviço para que engenheiros entendam entregas repetidas ou incertas.
Onde encontro a especificação da API Semaphore?
A referência deste site renderiza o documento Swagger/OpenAPI publicado com a versão Semaphore. Operações, caminhos e esquemas correspondem a uma versão específica, não a um resumo manual. Consulte por recurso em /api-docs/ ou leia o documento original para gerar um cliente. Sempre confira a especificação da versão realmente usada, pois endpoints e esquemas podem mudar entre versões.
Uma integração webhook precisa de endpoint exposto à internet?
O sistema chamador precisa alcançar sua instância Semaphore, mas isso não exige internet pública. Rede privada, VPN ou balanceador interno bastam quando o chamador está dentro. Nossa verificação de critérios e extratores usou listener só de loopback sem autenticação, não um exemplo para endpoint exposto. Sempre que o alias puder ser acessado fora da rede confiável, configure autenticação compatível e restrinja também a exposição na rede.
Como testar uma integração antes de conectar um sistema real?
Primeiro direcione a integração a um modelo inofensivo e envie os payloads com curl ou outro cliente HTTP. Envie um corpo sem correspondência e confirme que nenhuma tarefa aparece; depois envie um correspondente e confirme o início de exatamente uma tarefa. Abra os Detalhes: a integração fica registrada como origem e os valores extraídos aparecem para a execução. É a sequência que usamos localmente e detecta uma chave incorreta no critério antes de um serviço externo depender dele.
Posso gerenciar recursos Semaphore e executar workflows pela API?
Sim. A REST API abrange projetos, repositórios, inventários, credenciais, grupos de variáveis, modelos e outros recursos. Seu portal ou serviço de infraestrutura pode configurar, iniciar tarefas e ler status e saída. Pro também expõe execuções e aprovações de workflows pela API para um pipeline CI/CD iniciar uma operação completa. Use a referência OpenAPI para parâmetros e esquemas de resposta.
