Configurando webhooks
IBM Cloud® Internet Services tem alertas que você pode configurar através da API para avisar quando ocorrerem eventos. Use webhooks para notificar um serviço externo quando eventos ocorrem em sua conta.
Os alertas estão disponíveis apenas para os planos Enterprise.
Configuração de webhooks no console
Para configurar webhooks no console, navegue até a página Account (Conta ) e selecione a guia Alerts (Alertas ). Na seção Alertas, selecione a guia webhooks.
Criação de um webhook no console
- Clique em Criar.
- Insira um nome para o seu webhook.
- Insira a URL do webhook. Esse URL não pode ser atualizado; se você quiser alterá-lo, deverá excluir e recriar o webhook.
- Insira o segredo do webhook. O segredo não pode ser atualizado; se você quiser alterá-lo, deverá excluir e recriar o webhook.
Edição de um webhook no console
Para editar um webhook no console, clique no ícone de lápis ao lado do nome do webhook que deseja atualizar. Você pode editar apenas o nome do webhook. Se você precisar modificar um webhook, é recomendável excluir e recriar o webhook em vez de editá-lo.
Exclusão de um webhook no console
Para excluir um webhook no console, clique no do menu Ações do webhook que deseja excluir e selecione Excluir. Selecione Excluir na caixa
de confirmação para confirmar ou Cancelar para fechar a caixa de confirmação sem concluir a operação de exclusão.
Configuração de webhooks na CLI
Criação de um webhook a partir da CLI
Para criar um webhook a partir da CLI, execute o seguinte comando.
ibmcloud cis alert-webhook-create --name NAME --url URL [--secret SECRET] [-i, --instance INSTANCE] [--output FORMAT]
Em que:
- --name value é o nome do webhook.
-
- o valor -url é o ponto de extremidade POST a ser chamado quando um alerta for enviado.
-
- o valor -secret é o segredo que é passado no cabeçalho de autenticação do webhook quando um alerta de webhook é enviado.
- -i, --instance value é o nome ou ID da instância. Se não for definido, será usada a instância de contexto especificada por 'cis instance-set INSTANCE'.
- --output value: especifica o formato de saída; somente JSON é suportado.
Listagem de todos os webhooks da CLI
Para listar um webhook na CLI, execute o seguinte comando.
ibmcloud cis alert-webhooks [-i, --instance INSTANCE] [--output FORMAT]
Em que:
- -i, --instance value é o nome ou ID da instância. Se não for definido, será usada a instância de contexto especificada por 'cis instance-set INSTANCE'.
- --output value: especifica o formato de saída; somente JSON é suportado.
Obtenção de detalhes de um webhook na CLI
Para obter um webhook da CLI, execute o seguinte comando.
ibmcloud cis alert-webhook WEBHOOK_ID [-i, --instance INSTANCE] [--output FORMAT]
Em que:
- WEBHOOK_ID é o ID do webhook.
- -i, --instance value é o nome ou ID da instância. Se não for definido, será usada a instância de contexto especificada por 'cis instance-set INSTANCE'.
- --output value: especifica o formato de saída; somente JSON é suportado.
Atualização de um webhook a partir da CLI
Para atualizar um webhook a partir da CLI, execute o seguinte comando.
ibmcloud cis alert-webhook-update WEBHOOK_ID [--name NAME] [--url URL] [--secret SECRET] [-i, --instance INSTANCE] [--output FORMAT]
Em que:
- WEBHOOK_ID é o ID do webhook.
- --name value é o nome do webhook.
-
- o valor -url é o ponto de extremidade POST a ser chamado quando um alerta for enviado.
-
- o valor -secret é o segredo que é passado no cabeçalho de autenticação do webhook quando um alerta de webhook é enviado.
- -i, --instance value é o nome ou ID da instância. Se não for definido, será usada a instância de contexto especificada por 'cis instance-set INSTANCE'.
- --output value: especifica o formato de saída; somente JSON é suportado.
Exclusão de um webhook da CLI
Para excluir um webhook da CLI, execute o seguinte comando.
ibmcloud cis alert-webhook-delete WEBHOOK_ID [-i, --instance INSTANCE] [-f, --force]
Em que:
- WEBHOOK_ID é o ID do webhook.
- i, --instance value é o nome ou ID da instância. Se não for definido, será usada a instância de contexto especificada por 'cis instance-set INSTANCE'.
- -f, --force: tenta excluir o webhook sem solicitar confirmação.
Configuração de webhooks com a API
Para chamar esses métodos, deve-se estar designado a uma ou mais funções de acesso do IAM.
internet-svcs.zones.read
internet-svcs.zones.update
É possível verificar seu acesso indo para Usuários > name > Políticas de acesso.
Criação de um webhook com a API
A criação de um alerta de webhook é um processo de duas etapas. Primeiro, crie o webhook, em seguida, use o ID na resposta recebida para criar o alerta.
Para criar um webhook com a API, siga estas etapas:
- Configure seu ambiente de API com as variáveis corretas.
- Armazene a seguinte variável a ser usada no comando da API:
crn
: o CRN completo codificado por url da instância de serviço.name
: o nome do webhook.url
: a URL do webhook.secret
: o segredo opcional ou a chave de API necessária para usar o webhook.
- Quando todas as variáveis forem iniciadas, crie o webhook:
curl -X POST https://api.cis.cloud.ibm.com/v1/:crn/alerting/destinations/webhooks
-H 'content-type: application/json'
-H 'x-auth-user-token: Bearer xxxxxx'
-d '{"name":"Example Webhook","url":"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd"}'
Listagem de todos os webhooks com a API
Para listar todos os webhooks com a API, siga estas etapas:
- Configure seu ambiente de API com as variáveis corretas.
- Armazene a seguinte variável a ser usada no comando da API:
crn
: o CRN completo codificado por url da instância de serviço.
- Quando todas as variáveis forem iniciadas, obtenha a lista de webhooks:
curl -X GET https://api.cis.cloud.ibm.com/v1/:crn/alerting/destinations/webhooks
-H 'content-type: application/json'
-H 'accept: application/json'
-H 'x-auth-user-token: Bearer xxxxxx'
Obter detalhes de um webhook com a API
Para obter os detalhes de um webhook por meio da API, siga estas etapas:
- Configure seu ambiente de API com as variáveis corretas.
- Armazene a seguinte variável a ser usada no comando da API:
crn
: o CRN completo codificado por url da instância de serviço.webhook_id
: identificador de webhook de alerta.
- Quando todas as variáveis forem iniciadas, obtenha os detalhes do webhook:
curl -X GET https://api.cis.cloud.ibm.com/v1/:crn/alerting/destinations/webhooks/:webhook_id
-H 'content-type: application/json'
-H 'accept: application/json'
-H 'x-auth-user-token: Bearer xxxxxx'
Atualização de um webhook com a API
Para atualizar um webhook com a API, siga estas etapas:
- Configure seu ambiente de API com as variáveis corretas.
- Armazene a seguinte variável a ser usada no comando da API:
crn
: o CRN completo codificado por url da instância de serviço.webhook_id
: identificador de webhook de alerta.name
: o nome do webhook.url
: a URL do webhook.secret
: o segredo opcional ou a chave de API necessária para usar o webhook.
- Quando todas as variáveis forem iniciadas, atualize o webhook:
curl -X PUT https://api.cis.cloud.ibm.com/v1/:crn/alerting/destinations/webhooks/:webhook_id
-H 'content-type: application/json'
-H 'x-auth-user-token: Bearer xxxxxx'
-d '{"name":"Example Webhook","url":"https://hooks.slack.com/services/Ds3fdBFbV/456464Gdd"}'
Exclusão de um webhook com a API
Para excluir um webhook por meio da API, siga estas etapas:
- Configure seu ambiente de API com as variáveis corretas.
- Armazene a seguinte variável a ser usada no comando da API:
crn
: o CRN completo codificado por url da instância de serviço.webhook_id
: identificador de webhook de alerta.
- Quando todas as variáveis forem iniciadas, exclua o webhook:
curl -X DELETE https://api.cis.cloud.ibm.com/v1/:crn/alerting/destinations/webhooks/:webhook_id
-H 'content-type: application/json'
-H 'accept: application/json'
-H 'x-auth-user-token: Bearer xxxxxx'