Como usar Webhooks

Como conectar facilmente o Marquiz com outras aplicações

Por que usar "Webhooks"?

Você pode alertar aplicações web de terceiros sobre leads recebidos. Os dados dos novos leads podem ser enviados para uma URL especificada nas configurações do quiz. Você precisaria receber esses dados de seu lado com um script e enviá-los para um serviço de sua escolha. Este método seria uma solução perfeita para integração com seu sistema CRM ou serviços que ainda não oferecemos suporte direto de integração.

Um pedido de POST será enviado para a URL especificada. Você pode testar a recepção de leads no site do Webhook

Aviso importante! O script do hook deve retornar um status positivo enquanto recebe leads (ou seja, 20* - 200, 204, etc.)

Para adicionar o endereço de recepção do webhook ao seu quiz, vá até Integrações no editor de seu quiz e clique no botão Webhooks.

How to easily connect Marquiz with other apps (Webhooks)

No menu exibido insira o link que leva ao seu script do webhook e não se esqueça de salvar o quiz clicando no botão Salvar.

How to easily connect Marquiz with other apps (Webhooks) 1

How to easily connect Marquiz with other apps (Webhooks) 3

Os dados de lead umbo enviados para o endereço especificado serão algo parecido com isto:

{
"raw": [
{
"q": "ab6c5412-5c7f-489d-8d79-173ce632930e",
"a": "3f0bb0ea-fc31-4b49-86b5-337ca0cf86da"
},
{
"q": "d337ecb3-b903-4664-94c1-16acf2c2e3bb",
"a": "f3d4933b-6af3-48a9-a836-0173bbbf6415"
}
],
"answers": [
{
"q": "What is your total sum of loans in USD?*",
"a": "More than 100 000 USD."
},
{
"q": "What is your current loan delay?",
"a": "1 to 3 months"
}
],
"contacts": {
"name": "Name",
"email": "email@email.com",
"phone": "+12342345678"
},
"quiz": {
"id": "600920a2de60d9004900edb9",
"name": "Gift generator🌟"
},
"created": "2018-12-19T10:23:25.796Z",
"extra": {
"href": "http://example.com",
"utm": {
"source": "test_source",
"medium": "test_medium",
"name": "test_campaign", // Campaign
"content": "test_content",
"term": "test_term"
},
"cookies": {
"roistat_visit": "95852",
"roistat_marker": "example.com",
"roistat_marker_old": "example.com",
"roistat_call_tracking": "1",
"roistat_emailtracking_email": "null",
"_ga": "GA1.3.2016698540.1531763909"
},
"discount": 3,
"discountType": "melting",
"discountCurrency": "$",
"currency": "USD",
"currencySymbol": "$",
"notify": "now",
"ab": "A", (if A/B testing is enabled)
"timezone": 5,
"lang": "en",
"referrer": "http://example.com"
"ip": "111.11.111.111"
}
"result": {
"id": "OBq5B3FYI6",
"title": "Result header",
"cost": "1500",
"minCost": null,
"maxCost": null
}
}


Código PHP para recepção de dados de novos leads:

$data = json_decode(file_get_contents('php://input'), true);

$answers = $data['answers'];
$phone = $data['contacts']['phone'];
$email = $data['contacts']['email'];
$name = $data['contacts']['name'];
$createdDate = strtotime($data['created']);
$utm = $data['extra']['utm'];
$rawAnswers = $data['raw'];

// Do anything

http_response_code(200);
exit;


Code template for separate reception of questions and answers data:

$i = 0;
$arr = array();
foreach($answers as $key=>$value){
$arr[$i][$key] = $value;
$i++;
}

//-------------First QUESTION------------------------ //
$question1 = $arr[0][0]["q"]; // Question №1
$answer1 = $arr[0][0]["a"]; // Answer №1

//-------------Second QUESTION------------------------ //
$question2 = $arr[1][1]["q"]; // Question №2
$answer2 = $arr[1][1]["a"]; // Answer №2

//-------------Third QUESION------------------------ //
$question3 = $arr[2][2]["q"]; // Question №3
$answer3 = $arr[2][2]["a"]; // Answer №3

Powered by