Guia de Resposta
Ao contrário da guia de requisição, no campo direito, em vez de uma entrada, um select é exibido, na qual é selecionado um campo de entidade específico.
É indicado o formato da resposta da solicitação na qual ela vai ser recebida. As seguintes opções estão disponíveis:
JSON
XML
urlEncoded
Em Response, o formato da requisição é especificado separadamente, pois há casos em que a solicitação vai para urlEncoded e a resposta vem em JSON.
A resposta será aceita estritamente no formato selecionado no widget; se a resposta vier em um formato diferente, o parsing (segregação de campos) da resposta não funcionará.
Este campo é usado se a resposta vier em uma matriz de objetos e pode haver um número ilimitado deles (por exemplo, gatilhos de API que fazem uma solicitação para obter uma lista de entidades).
Veja um exemplo para o seguinte formato de dados da resposta:
Se você precisar obter os dois objetos, a caixa de seleção "Return data array" deverá ser marcada. O campo indica o mapeamento para o conjunto desejado, que neste caso é data. Além disso, nos campos criados, o mapeamento pode ser especificado sem um caminho para este massivo.
Também é possível marcar a caixa, mas deixar o campo vazio. Isso significa que os dados vêm na raiz do massivo, por exemplo:
Um gatilho com essa configuração, depois de receber essa resposta, será lançado exatamente tantas vezes quanto houver objetos na resposta.
Se precisar obter o valor dos cabeçalhos, os campos serão adicionados nesta guia. Em cada campo, a chave é indicada à esquerda e o campo da entidade é selecionado à direita, onde é preciso salvar o valor resultante. Por exemplo, quando você precisa obter o valor do cabeçalho:
No campo esquerdo é especificada a chave dateTimeEvent, e no campo direito seleciona-se o campo onde precisa salvar o valor:
Os campos que precisam ser obtidos do próprio corpo da solicitação são adicionados na aba de parâmetros.
No campo esquerdo, está escrito o mapeamento para a chave da variável, cujo valor deve ser obtido (a regra de mapeamento é semelhante ao mapeamento na guia Request). No campo à direita, é selecionado o campo da entidade, no qual será salvo o valor recebido.
Além disso, os campos têm uma caixa de seleção adicional em Conjunto Tipo Array. Esta caixa de seleção indica que a variável está no massivo especificado no campo Caminho para o conjunto de dados e o mapeamento deve ser especificado sem um caminho para este massivo.
Veja um exemplo para a seguinte resposta:
Nesse caso, especificando o caminho para o massivo, é possível criar três campos. O campo que captura o valor de ID não precisa ser marcado, mas os demais sim:
Assim, os dados serão recebidos duas vezes. A cada vez, o nome e o número do telefone serão únicos, e em ambos os casos será atribuído um ID a partir da raiz da resposta.
Se o campo selecionado, onde o valor está armazenado, for do tipo DateTime ou Phone, terá uma engrenagem com configurações adicionais, semelhantes aos tipos de variáveis da guia Request. Estes campos são opcionais e, caso não os preencha, o telefone virá no formato que o sistema o enviou, e a data tentará ser convertida automaticamente para o formato Y-m-d H:i:s, mesmo que chegue unixtime. Se o formato da data não for padrão, você deve registrar o seu formato.
Content-type
É indicado o formato da resposta da solicitação na qual ela vai ser recebida. As seguintes opções estão disponíveis:
JSON
XML
urlEncoded
Em Response, o formato da requisição é especificado separadamente, pois há casos em que a solicitação vai para urlEncoded e a resposta vem em JSON.
A resposta será aceita estritamente no formato selecionado no widget; se a resposta vier em um formato diferente, o parsing (segregação de campos) da resposta não funcionará.
O caminho para a matriz de dados
Este campo é usado se a resposta vier em uma matriz de objetos e pode haver um número ilimitado deles (por exemplo, gatilhos de API que fazem uma solicitação para obter uma lista de entidades).
Veja um exemplo para o seguinte formato de dados da resposta:
{"data":[ { "name":"Albato", "phone":"+79681112233" } { "name":"Albato2", "phone":"+79681112244" }]}
Se você precisar obter os dois objetos, a caixa de seleção "Return data array" deverá ser marcada. O campo indica o mapeamento para o conjunto desejado, que neste caso é data. Além disso, nos campos criados, o mapeamento pode ser especificado sem um caminho para este massivo.
Também é possível marcar a caixa, mas deixar o campo vazio. Isso significa que os dados vêm na raiz do massivo, por exemplo:
[ { "name":"Albato", "phone":"+79681112233" } { "name":"Albato2", "phone":"+79681112244" }]
Um gatilho com essa configuração, depois de receber essa resposta, será lançado exatamente tantas vezes quanto houver objetos na resposta.
Cabeçalhos
Se precisar obter o valor dos cabeçalhos, os campos serão adicionados nesta guia. Em cada campo, a chave é indicada à esquerda e o campo da entidade é selecionado à direita, onde é preciso salvar o valor resultante. Por exemplo, quando você precisa obter o valor do cabeçalho:
-H "dateTimeEvent: 2021-08-09 19:00:00"
No campo esquerdo é especificada a chave dateTimeEvent, e no campo direito seleciona-se o campo onde precisa salvar o valor:
Parâmetros
Os campos que precisam ser obtidos do próprio corpo da solicitação são adicionados na aba de parâmetros.
No campo esquerdo, está escrito o mapeamento para a chave da variável, cujo valor deve ser obtido (a regra de mapeamento é semelhante ao mapeamento na guia Request). No campo à direita, é selecionado o campo da entidade, no qual será salvo o valor recebido.
Além disso, os campos têm uma caixa de seleção adicional em Conjunto Tipo Array. Esta caixa de seleção indica que a variável está no massivo especificado no campo Caminho para o conjunto de dados e o mapeamento deve ser especificado sem um caminho para este massivo.
Veja um exemplo para a seguinte resposta:
{"id": 12345,"data":[ { "name":"Albato1", "phone":"+79681112233" } { "name":"Albato2", "phone":"+79681112244" }]}
Nesse caso, especificando o caminho para o massivo, é possível criar três campos. O campo que captura o valor de ID não precisa ser marcado, mas os demais sim:
Assim, os dados serão recebidos duas vezes. A cada vez, o nome e o número do telefone serão únicos, e em ambos os casos será atribuído um ID a partir da raiz da resposta.
Se o campo selecionado, onde o valor está armazenado, for do tipo DateTime ou Phone, terá uma engrenagem com configurações adicionais, semelhantes aos tipos de variáveis da guia Request. Estes campos são opcionais e, caso não os preencha, o telefone virá no formato que o sistema o enviou, e a data tentará ser convertida automaticamente para o formato Y-m-d H:i:s, mesmo que chegue unixtime. Se o formato da data não for padrão, você deve registrar o seu formato.
Atualizado em: 01/12/2022
Obrigado!