Evento JSON
Sobre o evento JSON
Você já quis que uma solicitação feita no seu site acionasse um tíquete na Qualtrics? Você já quis criar uma integração perfeita entre a Qualtrics e seu próprio sistema interno? Você já quis acionar uma tarefa na guia Fluxos de trabalho, mas com um evento que acontece fora da Qualtrics?
Os eventos JSON permitem que o software externo inicie workflows via solicitação HTTP. Em vez de esperar que um evento na Qualtrics acione outras ações na plataforma, você pode simplesmente configurar um evento JSON para receber solicitações de terceiros.
Limitações
O evento JSON não é compatível com as seguintes configurações:
- Qualquer coisa que não seja HTTP (por exemplo, fila de mensagens, SMS).
- Chamadas HTTP de saída.
- Processar XML (o corpo da solicitação XML será ignorado).
- Processe qualquer coisa diferente de JSON.
- Autenticar de qualquer forma além de um cabeçalho X-API-TOKEN ou nossa autorização básica HTTP modificada.
Qdica: OAuth e outras formas de autenticação são incompatíveis com eventos JSON.
- Qualquer análise sintática JSON que não possa ser satisfeita usando consultas JSONPath no corpo JSON.
- Chamadas que excedem o limite da taxa de API de 3.000 por minuto.
- Payloads que excedem 100 KB.
Tipos de autenticação suportados
Autenticação baseada em token/autorização de cabeçalho
Você pode autenticar transferindo seu token de API pelo cabeçalho da solicitação como X-API-TOKEN.
Exemplo: no exemplo de POST a seguir, em cURL, especificamos o URL base, o tipo de conteúdo e o token no cabeçalho. O ID da pesquisa e o formato da exportação são indicados no
body.curl -X POST -H 'X-API-TOKEN: yourapitokenhere' -H 'Content-Type: application/json' -d '{ "SurveyId": "SV_012345678912345", "format": "csv" }' 'https://yourdatacenterid.qualtrics.com/API/v3/responseexports'
Autorização básica HTTP
Autenticação básica é geralmente uma versão codificada em Base64 do nome de usuário:senha. No entanto, para maior segurança, a Qualtrics usa uma string codificada em Base64 com nome de usuário:x-api-token.
Para utilizar a Autenticação básica, você deve definir cabeçalhos na solicitação HTTP. O cabeçalho específico é Autorização.
Exemplo: Digamos que seu nome de usuário Qualtrics seja demo@qualtrics.com e seu Token de API seja f8gIK7G6GFH985Y4. Primeiro você escreveria,
demo@qualtrics.com:f8gIK7G6GFH985Y4
Depois da codificação Base64, isso apareceria como,
Base ZGVtb0BxdWFsdHJpY3MuY29tOmY4Z0lLN0c2R0ZIOTg1WTQ=
Assim, o cabeçalho de autorização que você adicionar à sua solicitação HTTP teria o valor Básico ZGVtb0BxdWFsdHJpY3MuY29tOmY4Z0lLN0c2R0ZIOTg1WTQ=.
Configurando um evento JSON
- Primeiro, você precisará criar um workflow. Vá para a página Fluxos de trabalho independentes.
Qdica: você também pode usar eventos JSON no Guia Fluxos de trabalho em um projeto. Só recomendamos adicionar um fluxo de trabalho a um projeto específico se ele estiver explicitamente relacionado. (Por exemplo, você está distribuindo esse projeto com o evento JSON.) - Certifique-se de que você está na guia Seus fluxos de trabalho.
- Clique em Criar um fluxo de trabalho.
- Selecione Iniciado quando um evento é recebido.
- Selecione o evento JSON.
- Se desejar, especifique um Resumo do acionador, que deve descrever a finalidade do evento JSON.
- Você receberá um URL. Use para chamar seu novo fluxo de trabalho de fora da Qualtrics, usando Postman, seu próprio sistema interno ou outros aplicativos similares. Para copiá-lo, clique em Copiar URL.
- Por padrão, os eventos JSON requerem autenticação. Se quiser permitir solicitações não autenticadas, desative Solicitar autenticação pela Qualtrics.
- Agora, você pode definir os dados do evento. Isso irá capturar dados da solicitação de entrada. Para iniciar, clique em Configurações avançadas.
Qdica: Para obter informações sobre a seção Teste, consulte Capturando eventos abaixo. - Na caixa à esquerda, dê o nome do campo JSON. Na caixa à direita, indique o local dentro dos dados do evento (corpo da requisição HTTP).
Qdica: Os locais devem estar no formato JSONPath. Consulte a tabela abaixo para obter um guia rápido da sintaxe JSONPath.
- Para adicionar outro campo, clique em Adicionar um campo JSON.
- Se você quiser adicionar um parâmetro QUERY, adicione-os na seção Parâmetros QUERY. Para obter maiores informações sobre o que são esses parâmetros e como eles funcionam na API, consulte nossa Documentação da API sobre parâmetros.
Aviso: Não é aconselhável passar dados de identificação pessoal através de parâmetros QUERY. Quaisquer informações de identificação pessoal ou dados confidenciais devem ser passados pelo corpo POST sempre que possível, uma vez que POST é mais seguro. Entre em contato com o Suporte da Qualtrics se tiver dúvidas ou preocupações.
- Para remover um campo, clique no sinal negativo ( – ).
- Para salvar suas alterações, clique em Salvar.
- Agora você pode adicionar condições e uma tarefa ao seu workflow clicando no sinal de mais ( + ). As condições determinam quando um workflow é executado, enquanto as tarefas são o resultado do workflow. Consulte o Visão geral dos fluxos de trabalho para mais informações
Qdica: Clique em seu evento JSON para alterar os parâmetros e os campos JSON.
Capturando eventos
Ao criar um evento de API externo, você pode precisar analisar sintaticamente os dados do corpo da publicação. No entanto, pode ser difícil, por vezes, analisar sintaticamente esses dados. Se você quiser descobrir o que sua API externa está enviando, siga estas etapas.
- Clique em seu evento JSON.
- Por padrão, os campos JSON de captura dos resultados de teste para que possam ser usados como texto transportado em outras tarefas nesta opção de fluxo de trabalho serão ativados. Essa opção faz com que os campos analisados sintaticamente no corpo do payload fiquem automaticamente disponíveis como texto transportado quando você adicionar suas tarefas de fluxo de trabalho.
- Clique em Executar um novo teste.
- Você verá uma mensagem informando que a Qualtrics está aguardando o recebimento do evento de seu sistema externo. Acione sua API externa.
Qdica: Para cancelar este teste, clique em Cancelar teste.
- Se o teste tiver sido bem-sucedido, você verá a mensagem Conectado com êxito ao servidor. O payload será analisado sintaticamente e adicionado à janela.
- Se desejar, clique em Executar um novo teste para executar outro teste. Você precisará executar sua próxima chamada de API após clicar nesta opção.
- Clique em Salvar.
Sintaxe de caminho JSON
A tabela abaixo fornece alguns dos fundamentos da sintaxe JSONPath. Observe que eles não são estabelecidos pela Qualtrics, mas são padrões usados com JSON.
Cam.JSON | Descrição | Exemplo |
$ | O objeto/elemento raiz | $.store[0].name |
@ | O objeto/elemento atual | $.store[?(@.name===”ACME Store”)] |
. | Operador inferior | $.eventDescription |
.. | Operador descendente recursivo | $.lojas[0]..preço |
* | Curinga | $.lojas[*].nome |
[] | Operador de subscrito | $.store[0].name |
[,] | Operador de união | $.lojas[0,1] |
[início:fim:etapa] | Operador de fatia de matriz | $.store[0:10:2] |
?() | Aplica um filtro | $.store[?(@.name==”ACME Store”)] |
() | Expressão de script | $.stores[(@.length-1)] |
Exemplo de sintaxe JSONPath
Neste exemplo, mostraremos como, com um objeto JSON, a tabela JSONPath pode ser usada.
Este é o nosso objeto JSON:
{
"eventDescription": "Monthly Revenue",
"}
stores": [
{
"name": "Acme Store",
"total": 1000000,
"topItem":
{ "price": "} store": "description": "Anvil" }
,
{
"name": "The Banana Stand",
"total": "}",
"topItem":
{ "price": "4
", "Gob",
"Descrição total": "}": "topItem": { "price": "4",
"Gob", "Descrição total": "}
": "
topItem": { "price": "4", "Descrição total": "}"
Agora, devemos adicionar os valores de retorno que vemos na tabela JSONPath para torná-lo mais claro.
$ -> Acme Store
@ -> [
{
"name": "Acme Store",
"total": 1000000,
"topItem":
{"price": "50", "description": "Anvil" roll
↑
. -> receita mensal
.. -> {
&
gt; 50
-> ["Acme Store", "
The Banana
Stand", "Pizza Planet"]
[] -> Acme Store
[,] -> [
A macro desconhecida: {"name"}
macro desconhecida: {"name"}
Item[
*Change [start:end:step] "
:
step] "name".
s() -> [{
"name": "Acme Store",
"total": 1000000,
"topItem":
{"price": "50", "Description": "Anvil" (] }]
() -> [
{
"name": "Pizza Planet",
"total": ] 80000,
"topItem":
"" "peponi description" "pizza Planet","total": ] 80000,
"topItem":" "peponi price" {"name" "pizza Planet","total": ] 80000,
"topItem":
"" "peponi price"
Exemplo de API no Javascript do nó
O exemplo abaixo é um modelo básico que você pode seguir ao formatar seus dados do evento.
solicitação var = requer('solicitar-promessa');
var levantyId = "SV_XXXXXXXXXXXX";
var trigger Id = "OC_XXXXXXXXX";
var brandId = "YOUR_BRAND_ID";
var userId = "UR_XXXXXXXXXXXXXXX";
var datacenter = "xx1";
var "apiqual_QUALken" ICiQUALken = "YTRvar/vol
"
contextId=" + levantyId + "&userId=" + userId + "&brandId=" + brandId + "&trigger Id=" + trigger Id;
var payload = {
"text": "This is some text",
"object": {
}
} {array
":
"true
" ["b", "
", "
"
"X-API-TOKEN": apiToken
}
};
request.post(options).then(function (ret) {
console.log("success:", url, payload);
}).catch(function (err) {
console.log("error: ", url);
console.log(err);
});
Exemplo: integração com Freshdesk
O evento JSON pode ser utilizado para integrar com Freshdesk como uma regra de webhook no Escalonador. Isso significa que os eventos no Freshdesk podem acionar tarefas na Qualtrics, como a criação de um tíquete ou a distribuição de uma pesquisa.
- Na Qualtrics, defina seu Evento como Evento JSON.
- Copie o URL.
- Em uma nova guia, acesse o Freshdesk.
- Na seção Admin, navegue para a opção que melhor se adequa ao tipo de regra que você deseja definir.
Qdica: Saiba a diferença entre Dispatch’r, Supervisor e Observer na documentação de suporte do Freshdesk. - Crie uma nova regra.
- Defina condições para determinar qual evento do Freshdesk deve acionar uma tarefa no Qualtrics.
Exemplo: talvez quando um agente do Freshdesk fizer isso para que o status do tíquete seja alterado de qualquer status para Resolvido, você gostaria de enviar uma pesquisa CSAT usando a Qualtrics. - Adicione uma nova ação e selecione Acionar webhook.
- Defina o Tipo de solicitação como POST.
- No URL de callback, cole o URL do evento JSON da etapa 2.
- Para usar a autenticação de token, adicione cabeçalhos personalizados, insira X-API-TOKEN: e defina-o igual ao seu token de API.
- Para usar a autenticação básica HTTP, clique em Requer autenticação, adicione seu nome de usuário do Qualtrics e, em vez da senha, insira seu token de API.
- Certifique-se de que a Codificação seja JSON.
- Selecione manualmente o conteúdo a ser transferido ou selecione Avançado para inserir um corpo JSON.
- Grave sua regra.
- Na Qualtrics, conclua seu fluxo de trabalho. Neste exemplo, vamos adicionar uma Tarefa do diretório XM.
- Não se esqueça de publicar as alterações da pesquisa quando estiver pronto para iniciar.
Exemplo: integração com ServiceNow
O evento JSON pode ser usado para integrar com ServiceNow. Isso significa que os eventos no ServiceNow podem acionar tarefas no Qualtrics, como a criação de um tíquete ou a distribuição de uma pesquisa.
- Na Qualtrics, defina seu Evento como Evento JSON.
- Copie o URL.
- Em uma nova guia, faça login na instância de desenvolvedor do ServiceNow.
- Selecione Mensagem REST.
- Clique em Novo.
- Nomeie sua mensagem restante.
- No campo Ponto de acesso, cole o URL que você copiou na Etapa 2.
- Modifique o tipo de autenticação para Básico.
- Vá para a ficha de registro Requisição HTTP.
- Clique duas vezes para adicionar X-API-TOKEN.
- Clique duas vezes para colar seu token de API.
- Em uma nova linha, adicione o nome Content-type.
- Defina o valor para application/json.
- Clique em Enviar.
- Reabra sua mensagem Rest.
- Em Métodos HTTP, clique em Novo.
- Atribua um nome ao método.
- Defina o método HTTP como POST.
- Defina o Tipo de autenticação como Herdar do superior.
- Clique em Enviar.
- Reabra o método HTTP POST que você acabou de criar.
- Na parte inferior da página, selecione Visualizar uso do script.
- Copie o texto.
- Procure e selecione Regras comerciais.
- Selecione Novo.
- Selecione uma tabela.
- Selecione Avançado.
- Determine quando a regra comercial é executada.
Exemplo: se você selecionou Incidente para sua tabela e deseja enviar uma pesquisa CSAT para tickets resolvidos, você pode adicionar uma condição indicando que essa regra deve ser executada quando o estado Incidente for alterado para Resolvido.Qdica: O Suporte da Qualtrics pode ajudar você a configurar seu Evento JSON e conectá-lo por meio do ServiceNow. No entanto, pode haver algumas perguntas sobre a funcionalidade ServiceNow que eles não podem responder. Se você tiver perguntas sobre como/quando as regras de negócios são executadas, consulte a documentação do ServiceNow sobre como as regras de negócios funcionam.
- Vá para a guia Avançado.
- Cole o conteúdo que você copiou da etapa 22, onde se diz Adicionar seu código aqui.
- Adicione um corpo. É aqui que você comunica as informações que gostaria de passar para a Qualtrics.
Exemplo: este é um exemplo do código final que você incluiria neste campo. A maioria desse código é a mensagem de saída fornecida pelo ServiceNow e varia de exemplo para exemplo. Infelizmente, o Suporte Qualtrics não pode ajudar você com qualquer codificação personalizada; se você tiver problemas com seu código, entre em contato com a comunidade do ServiceNow para obter ajuda.
A parte em negrito do código inclui três funções adicionais não incluídas no código original: um corpo JSON que chama o ID do usuário e o estado do incidente e uma chamada que recupera o endereço de e-mail do cliente incidente para que ele possa ser enviado ao CSAT (em itálico abaixo). Consulte a documentação do ServiceNow e consulte a comunidade dele se tiver perguntas adicionais.
(função executeRule(current, prior /*null when async*/) { // Adicione seu código aqui tente { var r = new sn_ws.RESTMessageV2('Qualtrics JSON Event ', 'JSON Event POST'); var body = { "User ID": gs.getUserID() "Incident state": current.state.getDisplayValue() ; var target = new GlideRecord('sys_user'); target.addQuery('sys_id', '=', current.caller_id); target.query(); during(target.next()) { body["email"] = target.email.getDisplayValue(); } var resposta = r.execute(); var responseBody = response.getBody(); var httpStatus = response.getStatusCode(); gs.addInfoMessage(httpStatus); ficha catch(ex) { var message = ex.message; gs.addInfoMessage("Erro ao comunicar com a Qualtrics " + mensagem); ) }(current, prior);
- Adicione o corpo à solicitação. Adicione o seguinte na parte em negrito do código da etapa anterior:
r.setRequestBody(JSON.stringify(body));
- Clique em Enviar.
- Na Qualtrics, conclua seu fluxo de trabalho. Para continuar o exemplo da pesquisa CSAT, provavelmente adicionaríamos uma Tarefa do diretório XM.
- Não se esqueça de publicar as alterações da pesquisa quando estiver pronto para iniciar.
Exemplo: Integração com Microsoft Dynamics através do fluxo da Microsoft
O evento JSON faz isso para que os eventos no Microsoft Dynamics possam acionar tarefas no Qualtrics, como a criação de um tíquete ou a distribuição de uma pesquisa. Por exemplo, sempre que você excluir um registro de conta no Microsoft, poderá distribuir uma pesquisa da Qualtrics ao proprietário da conta que faz perguntas de saída. (Por exemplo, lamentamos vê-lo ir embora! Como foi o seu tempo conosco? Como podemos melhorar?)
Para integrar o Evento JSON com ações que ocorrem no Microsoft Dynamics, você realmente precisa fazer a configuração dentro do Microsoft Flow em vez do Dynamics. Não se preocupe – O fluxo do Microsoft vem livre com todas as contas do Microsoft Dynamics, para que você possa efetuar login em Flow com suas informações Dynamics aqui.
- Na Qualtrics, defina seu Evento como Evento JSON.
- Copie o URL.
- Em uma guia separada, vá para https://us.flow.microsoft.com/en-us/ e use suas informações do Microsoft Dynamics para efetuar login em Fluxo.
- Selecione Meus fluxos à esquerda.
- Clique em Novo e selecione Automático – em branco.
- Nomeie o fluxo.
- Selecione um acionador. Este é o evento que acontece na Microsoft que iniciará a tarefa no Qualtrics. Você pode escolher o que serve aos seus propósitos, mas para este exemplo, escolhemos “Quando um registro é excluído (Dynamics 365)”.
- Clique em Criar.
- Em Nome da organização, efetue login em sua conta Dynamics.
- Em Nome da entidade, selecione o tipo de registro ou arquivo. Para nosso exemplo, usaríamos “Contas”.
- Clique em Próxima etapa e selecione Adicionar uma ação.
- Selecione HTTP.
- Modifique o Método para POST.
- Cole o URL do seu evento JSON no campo URI.
- Use a autenticação de token. Em Cabeçalhos, insira X-API-TOKEN e no campo ao lado dele, cole seu token de API.
- Em Corpo, você pode inserir um corpo JSON. Isso ajuda você a decidir as informações que deseja passar do Dynamics para o Qualtrics.
Qdica: Use o botão Adicionar conteúdo dinâmico para selecionar campos de registro de dinâmica que você gostaria de trazer para a Qualtrics. Certifique-se de seguir o formato JSON adequado, como exibido na captura de tela. Para obter ajuda na solução de problemas de conteúdo dinâmico, entre em contato com o suporte da Microsoft.
- Quando terminar, clique em Salvar.
- Na Qualtrics, conclua seu fluxo de trabalho. Neste exemplo, vamos adicionar uma Tarefa do diretório XM.
- Não se esqueça de publicar as alterações da pesquisa quando estiver pronto para iniciar.
Exemplo: integração com Genesys PureCloud
Utilizando eventos JSON, você pode integrar com Genesys PureCloud para enviar aos clientes uma pesquisa de acompanhamento após concluir uma interação por telefone ou chat de suporte.
- Na pesquisa que você deseja enviar, navegue até Fluxos de trabalho.
- Criar um novo workflow baseado em eventos.
- Para o evento workflow, selecione o evento JSON.
- Clique em Copiar URL para copiar o ponto de extremidade do evento para seu clipboard.
- Sem fechar a janela Evento JSON, abra uma nova guia em seu browser e navegue para Genesys.
- Navegue para Admin.
- Clique em Ações.
- Clique em Adicionar ação.
- Selecione Serviços web Ações de dados como o Nome da integração.
Qdica: Se você não tiver a opção de selecionar as ações de dados de serviços da Web, precisará ativar a integração. Consulte esta página para obter mais informações. - Dê à sua ação um Nome de ação.
- Clique em Adicionar.
- Navegue para a guia Configuração.
- Vá para a aba Contratos.
- Em Contrato de entrada, selecione JSON.
- Configure as propriedades que são enviadas à Qualtrics.
Exemplo: por exemplo, o código abaixo passará o endereço de e-mail, o número de telefone, o nome e o sobrenome.
{ "type": "object", "properties": { "emailAddress": { "type": "string" }, "phoneNumber": { "type": "string" }, "firstName": { "type": "string" }, "lastName": { "type": "string" } , "additionalProperties": true }
- Vá para a guia Configuração.
- Modifique o tipo de solicitação para POST.
- No campo Solicitar modelo de URL, cole o URL do evento JSON no Qualtrics.
- Clique em Adicionar cabeçalho.
- Na caixa Chave, insira X-API-TOKEN.
- Na caixa Valor, insira seu token da API Qualtrics.
- Vá para a guia Teste.
- Insira valores de teste para suas propriedades.
- Clique em Executar ação.
- Genesys dirá se a ação foi bem sucedida. Se falhar, a resposta do erro será exibida para ajudar você a corrigir o problema.
- Retorne ao seu evento JSON no Qualtrics e verifique se suas propriedades foram passadas para a Qualtrics com sucesso.
- Clique em Salvar.
- Clique no sinal de mais ( + ) e, em seguida, em Tarefa para configurar a tarefa que você deseja seguir quando o evento JSON for acionado. Em nosso caso, queremos enviar uma pesquisa aos entrevistados, então selecionamos a tarefa do XM Directory.
Qdica: ao configurar sua tarefa, use o menu de texto transportado para usar valores transmitidos pela Genesys (por exemplo, e-mail, nome do cliente etc.).
- Depois de configurar a tarefa na Qualtrics, retorne ao Genesys e clique em Salvar & Publicar.
- Clique em Sim.
- Navegue para Admin.
- Clique em Arquiteto.
- Selecione Convite de pesquisa no menu suspenso do fluxo.
- Clique em Adicionar.
- Dê ao seu fluxo um Nome, uma Descrição e um Setor de atividade.
- Clique em Criar fluxo.
- Na seção Dados da sua Caixa de ferramentas, selecione Chamar ação de dados e arraste-a para a caixa drop-down no fluxo.
- Dê um nome à sua ação.
- Para a Categoria, selecione Serviços web Ação de dados.
- Para a ação de dados, selecione a ação de dados que você criou anteriormente.
- Ao lado de cada propriedade, clique no menu suspenso e selecione Expressão.
- Para os valores da característica, insira os dados que estão sendo enviados para cada característica. A caixa preencherá automaticamente seus campos à medida que você digita.
Qdica: Esta página tem todas as propriedades padrão incluídas no fluxo de convite de pesquisa. Você também pode usar expressões complexas em situações em que as informações de contato do cliente estão em falta ou requer formatação adicional.Qdica: As informações de contato são precedidas da Survey.CustomerContact.
- Clique na caixa mais abaixo em seu fluxo.
- Selecione Caixa de ferramentas, depois, Convites de pesquisa e Cancelar pesquisa.
- Selecione Cancelar adesão para a disponibilidade.
- Clique em Publicar. Genesys irá validar o fluxo e, em seguida, publicá-lo. Depois que isso for feito, o fluxo estará em vigor e começará a enviar pesquisas aos clientes quando eles concluírem as interações de suporte.