Configurações do Webhook
O recurso de configuração webhook é usado pela API para enviar eventos ao seu receptor de webhook.
Uma organização pode ter uma configuração de webook padrão que é usada por todas as chaves dentro dessa organização que não especificam uma configuração de webhook própria.
Atributos
nome | modelo | Descrição |
---|---|---|
id |
webhook config ID | Resource identifier. |
resource |
string, always webhook_config |
Resource type specifier. |
organisation |
organisation ID | The organisation the resource belongs to. |
url |
string | The url to target when sending events. |
secret |
string | The shared secret used to verify event signatures. |
state |
string | One of: new , valid , invalid , deactivated . |
date_created |
datetime | When the resource was created. |
Segredo
Quando uma configuração webhook é criada, um segredo será gerado ao lado dela, que será usado para assinar eventos enviados pela API. É altamente recomendável que você implemente seu receptor de webhook para verificar a assinatura dos eventos recebidos usando esse segredo. Para obter mais detalhes sobre o procedimento de verificação de assinatura, consulte os documentos de configuração do webhook .
Estados
-
new
acaba de ser criado ou atualizado recentemente, mas ainda não foi testado. -
valid
has passed validation e está pronto para ser usado. Uma organização deve ter pelo menos uma configuração de webhook nesse estado para ser utilizável. -
invalid
falhou no teste de validação. Deve ser atualizado ou testado novamente. -
deactivated
foi desativada pela organização proprietária.
Criar POST /configs/webhook
Esta ação criará uma tarefa webhook_config.test
para validar os detalhes do terminal. Se o receptor do webhook ainda não estiver configurado, esse teste provavelmente falhará e configurará a configuração para o estado invalid
. No entanto, a configuração sempre pode ser testada novamente usando a ação de teste .
Parâmetros
name | type | description |
---|---|---|
url |
required | The URL of your webhook receiver. |
Usando cURL
curl https://ricloud-api.reincubate.com/configs/webhook \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "url": "https://www.mywebhook.com/webhooks/" }'
Usando ricloud-py
import ricloud webhook_config = ricloud.WebhookConfig.create(url='https://www.mywebhook.com/webhooks/')
Recuperar GET /configs/webhook/{webhook_config ID}
Usando cURL
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID> \ -H 'Authorization: Token <your key_token>'
Usando ricloud-py
import ricloud webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>)
Listar GET /configs/webhook
As configurações do Webhook no estado deactivated
ficam ocultas por padrão e só podem ser listadas por filtragem explícita.
Parâmetros
name | type | description |
---|---|---|
state |
string | Filter webhook configs by their state. |
date_created |
datetime filter | Filter by resource creation date. |
Atualizar o POST /configs/webhook/{webhook_config ID}
Esta ação irá criar uma tarefa webhook_confg.test
em segundo plano para validar quaisquer mudanças feitas na configuração.
O atributo de state
só pode ser alterado para deactivated
no caso de você estar essencialmente aposentando uma configuração.
Parâmetros
name | type | description |
---|---|---|
url |
string | Update the URL. |
state |
string | Only to new or deactivated . |
Usando cURL
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID> \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "url": "https://www.myupdatedwebhook.com/webhooks/", }'
Usando ricloud-py
import ricloud webhook_config = ricloud.WebhookConfig.update_with_id( <webhook_config ID>, url='https://www.myupdatedwebhook.com/webhooks/' ) # OR webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>) webhook_config.update(url='https://www.myupdatedwebhook.com/webhooks/')
Teste POST /configs/webhook/{webhook_config ID}/test
Esta ação cria uma tarefa webhook_config.test
que envia um evento de teste usando a configuração especificada. O resultado do teste atualizará o atributo de state
da configuração do webook de acordo.
Usando cURL
curl https://ricloud-api.reincubate.com/configs/webhook/<webhook_config ID>/test \ -H 'Authorization: Token <your key_token>'
Usando ricloud-py
import ricloud test_task = ricloud.WebhookConfig.test_with_id(<webhook_config ID>) # OR webhook_config = ricloud.WebhookConfig.retrieve(<webhook_config ID>) test_task = webhook_config.test()