Configuração no Serprobots
O cadastro de Webhooks deve ser realizado a partir da tela de edição de um chatbot! Portanto, dentro desta tela, navegue até o passo chamado "Componentes" e você estará em uma tela conforme a Figura 1. Observou que temos uma seção para cadastro de Webhooks logo no final desta tela? Agora, para cadastrar um Webhook, clique no link Adicionar um novo webhook.

Feito isto, você terá uma tela igual à da Figura 2. Nesta tela, informe um nome para o Webhook e anote-o, pois este nome será utilizado tanto no Watson Assistant, como no Rivescript. Para este exemplo, usaremos o nome obterDadosCPF.
O próximo campo a ser preenchido é o que informa qual o Método HTTP deve ser usado. O Serprobots provê suporte aos métodos POST, PUT, DELETE e GET. Logo após o método HTTP, devemos informar se a API se encontra hospedada internamente no Serpro ou em um servidor Externo. Isto é importante, pois para ter acesso a serviços externos, o Serprobots deve realizar configurações de proxy específicas para acessar este servidor.
Em seguida, informe o endereço base para a API que será consultada, conforme a Figura 2. Este endereço pode ser tanto de um sistema interno ao Serpro, como um externo. Supondo que temos uma API hospedada em https://api.serpro.gov.br, então, você deve usar apenas este endereço neste campo.
Não é necessário informar a porta junto com o endereço base, pois ela será informada no próximo campo: Porta. Em nosso exemplo, vamos cadastrar o endereço base como https://api.serpro.gov.br e usar a porta 80.

Em seguida, indique o caminho (path) que deve ser usado para chegar a um determinado endpoint da API. Por exemplo, considerando que você cadastrou o endereço base da sua API para https://api.serpro.gov.br e você tem um endpoint com /cpf, então, você deve cadastrar no campo caminho apenas /cpf.
Dica
Alguns frameworks web, como o Flask, para Python, possuem um mecanismo de rotas onde uma rota configurada com uma barra (/) no final é diferente do mesmo endereço, mas sem essa barra. Por exemplo, o endereço http://minhaapi.com/api é diferente de http://minhaapi.com/api/. Entretanto, note que o Serprobots remove qualquer barra ao final do Path. Caso esteja usando frameworks como o Flask, fique atento para configurar a sua API para aceitar requisições tanto com a barra (/) no final como também sem essa barra. Lembrando: O Serprobots irá remover qualquer \ ao final do Path.
Logo abaixo, cadastre todos os cabeçalhos que serão necessários para acessar a API. Por exemplo, caso o sistema precise de um token para ser acessado, crie o cabeçalho Authorization e o define como Bearer token. Em nosso exemplo, não precisaremos de cabeçalhos, portanto, deixe este campo vazio.