Evento JSON
O que há nesta página
Qdica: os eventos JSON estão disponíveis apenas para usuários que adquiriram acesso à API do Qualtrics. Se você estiver interessado em obter esse característica, fale com seu executivo Conta ou com o Conta Services.
Sobre o Evento JSON
Você já quis que uma solicitação feita em seu site acionador um tíquete no Qualtrics? Você já quis criar uma integração perfeita entre o Qualtrics e seu próprio sistema interno? Você já quis acionador uma tarefa na guia Workflows, mas com um evento que acontece fora do Qualtrics?
Os eventos JSON permitem que softwares externos iniciem fluxos de trabalho por meio de solicitação HTTP. Em vez de esperar que um evento no Qualtrics acionador uma ação adicional na plataforma, você pode simplesmente configurar um evento JSON para receber solicitações de terceiros.
Qdica: você deve gerar um token de API antes que esse característica esteja disponível para você. Se você já tiver um token de API, não precisará gerar um novo.
Atenção: A configuração de um evento JSON requer conhecimentos avançados de programação. Embora nossa equipe de suporte tenha prazer em ajudar com os aspectos básicos da inserção de informações no evento, não podemos oferecer suporte aos aspectos de programação. Como alternativa, você pode tirar as suas dúvidas com a nossa comunidade de usuários dedicados.
Limitações
O evento JSON não é compatível com as seguintes definições e 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).
- Processar qualquer coisa que não seja JSON.
- Autenticar de outra forma que não seja um cabeçalho X-API-TOKEN ou nossa autenticação básica de HTTP modificada. Qdica: O OAuth e outras formas de autenticação são incompatíveis com eventos JSON.
- Qualquer análise de JSON que não possa ser satisfeita com o uso de consultas JSONPath no corpo do JSON.
- Chamadas que excedem o limite de taxa de API de 3.000 por minuto.
- Cargas úteis superiores a 100 KB.
- 10 campos de entrada manual. Qdica: quando as informações forem obtidas com a captura evento, elas serão adicionadas ao corpo do JSON. A captura Evento é a única maneira de adicionar mais de 10 campos.
Tipos de autenticação suportados
Autenticação baseada em token / Autenticação de cabeçalho
Você pode se autenticar passando seu token de API pelo cabeçalho da solicitação como X-API-TOKEN.
Exemplo: No exemplo de POST a seguir, no cURL, especificamos o URL de base, o Content-Type e o Token no cabeçalho. A ID da Pesquisa e o formato da exportação são especificados no corpo
.curl -X POST -H 'X-API-TOKEN: yourapitokenhere' -H 'Content-Type: application/json' -d '{
”
surveyId": "SV_012345678912345",
"format": "csv"
}'API
Autenticação básica de HTTP
A autenticação básica geralmente é uma versão codificada em Base64 de nome de usuário:senha. No entanto, para aumentar a segurança, a Qualtrics usa uma string codificada em Base64 de username:x-api-token.
Para usar o Basic Auth, você deve definir cabeçalhos na solicitação HTTP. O cabeçalho específico é Authorization.
Exemplo: Digamos que seu nome de usuário Qualtrics seja demo@qualtrics.com e seu token API seja f8gIK7G6GFH985Y4. Primeiro, você escreveria,
demo@qualtrics.com:f8gIK7G6GFH985Y4Então, após a codificação Base64, isso apareceria como,
Básico ZGVtb0BxdWFsdHJpY3MuY29tOmY4Z0lLN0c2R0ZIOTg1WTQ=Portanto, o cabeçalho Authorization que você adiciona à sua solicitação HTTP teria o valor Basic ZGVtb0BxdWFsdHJpY3MuY29tOmY4Z0lLN0c2R0ZIOTg1WTQ=.
Qdica: confira estas ferramentas para codificar base64 e decodificar base64.
Configuração de um Evento JSON
Qdica: clique em seu evento JSON para alterar os parâmetros e os campos JSON.
Atenção: Um evento JSON só pode ser disparado via API a partir da mesma conta que criou o evento. Se uma conta diferente for usada para acionar a API para um evento JSON, você ainda poderá receber uma resposta API 202-success, mas isso significa que um token de API válido foi usado para fazer uma solicitação válida, mas não significa necessariamente que o token de API correto foi usado ou que o evento JSON foi acionado corretamente. Se você receber uma mensagem de API 202-success, deverá verificar a plataforma para confirmar se a API correta foi usada.
Capturando eventos
Quando estiver criando um evento API externo, talvez seja necessário analisar os dados do corpo do post. No entanto, às vezes pode ser difícil analisar esses dados. Se quiser descobrir o que sua API externa está enviando, siga estas etapas.
Sintaxe de JSONPath
A tabela abaixo fornece alguns dos conceitos básicos da sintaxe JSONPath. Observe que eles não são estabelecidos pela Qualtrics, mas são padrões usados com JSON.
Atenção: A configuração de um Evento JSON requer conhecimentos avançados de programação. Embora nossa equipe de suporte tenha prazer em ajudar com os aspectos básicos da inserção de informações no evento, não podemos oferecer suporte aos aspectos de programação. Você sempre pode tentar perguntar à nossa comunidade de usuários dedicados.
| JSONPath | Descrição | Exemplo |
|---|---|---|
| $ | O objeto/elemento raiz | $.stores[0].name |
| @ | O objeto/elemento atual | $.stores[?(@.name===”ACME Store”)] |
| . | Operador infantil | $.eventDescription |
| .. | Operador descendente recursivo | $.stores[0]..price |
| * | Curinga | $.stores[*].name |
| [] | Operador de subscrito | $.stores[0].name |
| [,] | Operador da União | $.stores[0,1] |
| [início:fim:etapa] | Operador de corte de matriz | $.stores[0:10:2] |
| ?() | Aplica um filtro | $.stores[?(@.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.
Esse é o nosso objeto JSON:
{
"eventDescription": "Monthly Revenue",
"stores": [
{
"name": "Acme Store",
"total": 1000000,
"topItem":
{ "price": "50", "description": "Anvil" }
},
{
"name": "The Banana Stand",
"total": 250000,
"topItem":
{ "price": "4", "description": "The Gob" }
},
{
"name": "Pizza Planet",
"total": 80000,
"topItem":
{ "price": "15", "description": "Pepperoni" }
}
]
}
Agora, devemos adicionar os valores de retorno que vemos na tabela JSONPath para deixar tudo mais claro.
$ -> Acme Store
@ -> [
{
"name": "Acme Store",
"total": 1000000,
"topItem":
{ "price": "50", "description": "Anvil" }
}
]
. -> Receita mensal
... -> 50
-> ["Acme Store", "The Banana Stand", "Pizza Planet"]
[] -> Acme Store
[,] -> [
Macro desconhecida: { "name"}
,
Macro desconhecida: { "name"}
]
**Altere o exemplo de [start:end:step] para "$.stores[1:3:1]"
[start:end:step] -> [
{
"name": "The Banana Stand",
"total": 250000,
"topItem":
{ "price": "4", "description": "The Gob" }
},
{
"name": "Pizza Planet",
"total": 80000,
"topItem":
{ "price": "15", "description": "Pepperoni" }
}
]
?() -> [{
"name": "Acme Store",
"total": 1000000,
"topItem":
{ "price": "50", "description": "Anvil" }
}]
() -> [
{
"name": "Pizza Planet",
"total": 80000,
"topItem":
{ "price": "15", "description": "Pepperoni" }
}
] Exemplo de API em Node Javascript
O exemplo abaixo é um modelo básico que você pode seguir ao formatar seus dados de Evento.
Atenção: A configuração de um Evento JSON requer conhecimentos avançados de programação. Embora nossa equipe de suporte tenha prazer em ajudar com os aspectos básicos da inserção de informações no evento, não podemos oferecer suporte aos aspectos de programação. Você sempre pode tentar perguntar à nossa comunidade de usuários dedicados.
var request = require('request-promise');
var surveyId = "SV_XXXXXXXXXXXXXX";
var triggerId = "OC_XXXXXXXXXXX";
var brandId = "YOUR_BRAND_ID";
var userId = "UR_XXXXXXXXXXXXXXXXX";
var datacenter = "xx1";
var apiToken = "YOUR_QUALTRICS_API_TOKEN";
var url = "https://" + datacenter + ".qualtrics.evento" +
"?contextId=" + surveyId + "&userId=" + userId + "&brandId=" + brandId + "&triggerId=" + triggerId;
var payload = {
"text": "This is some text",
"object": {
"number": 4
},
"array": ["a", "b", "c", "d"]
};
var options = {
url: url,
json: true,
body: payload,
headers: {
"Content-Type": "application/json", // OBRIGATÓRIO!!!
"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 o Freshdesk
Qdica: isso é separado da tarefa do Freshdesk.
O Evento JSON pode ser usado para integração com o Freshdesk como uma regra de webhook no Dispatch’r. Isso significa que os eventos no Freshdesk podem acionador tarefas no Qualtrics, como a criação de um tíquete ou a distribuição de uma pesquisa.
Qdica: suporte da Qualtrics pode ajudá-lo a configurar seu Evento JSON e conectá-lo por meio do Freshdesk. No entanto, pode haver algumas perguntas sobre a funcionalidade do Freshdesk que eles não podem responder. Se tiver dúvidas sobre o lado do Freshdesk, dê uma olhada na documentação sobre as regras do Dispatch’r.
Qdica: para saber mais sobre os Webhooks do Freshdesk, consulte a documentação vinculada no site de suporte deles.
Exemplo: Integração com o ServiceNow
Qdica: isso é separado da Tarefa do ServiceNow.
O Evento JSON pode ser usado para integração com o ServiceNow. Isso significa que os eventos no ServiceNow podem acionador tarefas no Qualtrics, como a criação de um tíquete ou a distribuição de uma pesquisa.
Qdica: suporte da Qualtrics pode ajudá-lo a configurar seu Evento JSON e conectá-lo por meio do ServiceNow. No entanto, pode haver algumas perguntas sobre a funcionalidade do ServiceNow que eles não podem responder. Se tiver dúvidas sobre como fazer login e ativar sua instância de desenvolvedor do ServiceNow, consulte a documentação sobre Personal Developer Instances.
Exemplo: Integração com o Microsoft Dynamics por meio do Microsoft Flow
Qdica: Isso é separado do Microsoft Dynamics Tarefa.
O Evento JSON faz com que os eventos no Microsoft Dynamics possam acionador 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 conta na Microsoft, poderá distribuir uma pesquisa Qualtrics ao proprietário conta com perguntas de saída. (por exemplo, Lamentamos sua saída! Como foi seu tempo conosco? Como podemos melhorar?)
Para integrar o Evento JSON com ações que ocorrem no Microsoft Dynamics, você precisa fazer a configuração no Microsoft Flow em vez de no Dynamics. Não se preocupe – o Microsoft Flow é fornecido gratuitamente com todas as conta do Microsoft Dynamics, portanto, você pode fazer login no Flow com suas informações do Dynamics aqui.
Qdica: suporte da Qualtrics pode ajudá-lo a configurar seu Evento JSON e conectá-lo por meio do Microsoft Flow e do Microsoft Dynamics. No entanto, pode haver algumas perguntas sobre a funcionalidade da Microsoft que eles não podem responder. Se você tiver dúvidas sobre o lado da Microsoft, tente verificar a documentação do Flow e os recursos do Dynamics.
Qdica: o Microsoft Flow é o preferido para essas etapas, pois ele é capaz de enviar mais informações para o Qualtrics no corpo JSON. Se você configurar isso dentro do Microsoft Dynamics em vez do Flow, somente os campos alterados durante o evento do Dynamics serão enviados para o Qualtrics. Por exemplo, se você optar por acionador com base em uma atualização de registro e apenas um campo “e-mail” for alterado, o “nome” e o “endereço” não serão enviados ao Qualtrics, mesmo que você solicite especificamente esses campos no corpo da mensagem. O Flow enviará tudo o que você solicitou para o Qualtrics, independentemente de o campo ter sido alterado no evento de disparo.
Exemplo: Integração com o Genesys PureCloud
Qdica: Para configurar essa integração, você deve ter acesso ao Genesys Cloud Architect e ao Genesys Web Service Data Actions.
Usando eventos JSON, você pode integrar-se ao Genesys PureCloud para enviar aos clientes uma pesquisa de acompanhamento após a conclusão de uma interação de suporte por telefone ou chat.
Perguntas frequentes
O evento JSON permite que eu faça a integração com _?
O evento JSON permite que eu faça a integração com _?
- Pode ser configurado para fazer chamadas HTTP POST de saída (por exemplo, webhooks, aplicativo personalizado)
- É possível autenticar transferindo um token de cabeçalho
- Define o cabeçalho do tipo de conteúdo como “application/json” e formata os corpos da solicitação como JSON válido (opcional para dados de evento)
Quantos eventos por minuto posso realizar em meu evento JSON (op_start) antes de ser limitado?
Quantos eventos por minuto posso realizar em meu evento JSON (op_start) antes de ser limitado?
Como sei se meu fluxo de trabalho de evento JSON falha?
Como sei se meu fluxo de trabalho de evento JSON falha?
O que são workflows? / Onde estão as ações?
O que são workflows? / Onde estão as ações?
Não há alterações na funcionalidade do fluxo de trabalho como parte desta atualização.
Isso é ótimo! Obrigado pelo seu feedback!
Obrigado pelo seu feedback!