SurveyLabs logo
     
    produkt
    Email spørgeskema Website spørgeskema Omnichannel spørgeskema 360º Analyser White label spørgeskema
    Hvad kan vi
    Indsigt AI analyser Gamification NPS - find promotorer Gentagne undersøgelser
    Email spørgeskema Website spørgeskema Omnichannel spørgeskema 360º Analyser White label spørgeskema Indsigt AI analyser Gamification NPS - find promotorer Gentagne undersøgelser
    funktioner
    Spørgeskema Medarbejder spørgeskema Produkt spørgeskema Markedsundersøgelse Salgs spørgeskema
    industrier
    Sundhed Bureau Uddannelse Hoteller & Oplevelser Restaurant
    Sundhed Bureau Uddannelse Hoteller & Oplevelser Restaurant
    FunktionerPriserGratis konto☰
    flag_dk
    Dansk Support
    Danske Skabeloner
    Made with in Denmark
Overview
Introduction
Request / Response Format
Authentication
Access Token
Error Handling
Pagination
Objects
Api Explorer
Email
Invitation Send
Email Add
Survey
Submissions
Newentries
View Surveys
View Collectors
View Lists

API dokumentation beta

Overview

Introduction

SurveyLabs tilbyder API adgang for at kunne automatisere forretningsgange, så som at afsende en spørgeskema, hver gang en bestemt hændelse indtræder.

API adgang er pt. tidlig beta.

Henvendelser vedrørende API adgangen kan ske til api@surveylabs.io.
Request / Response Format
SurveyLabs API anvender HTTPS requests med JSON parametre. API response er ligeledes i JSON format.

Authentication

API adgang valideres med Access Token. Din egen Access Token kan genereres under din konto (øverst i højre hjørne) -> API.
Access Token
Generer din Access Token med følgende trin:

1) Opret en konto på SurveyLabs.
2) Log ind på din konto
3) Klik på kontoikonet øverst til højre
4) Naviger rullemenuen til "Konto"
5) Naviger til undermenuen "API"
5) Generer Access Token

Error Handling

Vores API bruger standard HTTP-statuskoder som 2xx for succes og 4xx for fejl. Følgende tabel viser HTTP-statuskoder.

Status CodeDescription
200 OKRequest is successful.
201 CreatedNew resources have been successfully created.
202 AcceptedRequest accepted but it is queued or processing.
400 Bad RequestRequest has missing required parameters.
401 UnauthorizedIncorrect Token or missing token.
403 Forbidden Access denied for the requested resource.
404 Not FoundThe requested resource does not exist.
429 Too Many RequestsApi request limit exceeded.
500 Internal Server ErrorSomething went wrong in at server.

Pagination

Ved søgeresultater, hvor antallet af recoreds overstiger vores default max-records, anvendes Pagination.

Pagination anvendes ved at angive maxResult
(records pr. side ) og pageNo (side nummer). Vores default max-records er lige nu 50 records.

NameDescriptionType
maxResultMax records pr. pageInteger
pageNoPage numberInteger

Sendes som parametre til GET funktioner.

Objects

Objekter anvendes til at identificere elementer i spørgeskemaet. Det kan være selve spørgeskemaet, collectors, rapporter osv.

NameDescription
survey_idUsed to identity a specific survey
collector_idCollector_id attached to a survey. Collectors can be: email, website, QR code etc.
list_idlist_id attached to a email collectors only. List contains respondents.

Api Explorer

Email

Invitation Send
POST  https://surveylabs.io/api/v01/share
Sender invitation til deltagelse i et spørgeskema til en email-adresse.

Det kræves at en email indsamler (collector) er oprettet. Email-adressen kan tilføjes til første liste eller en angivet liste.

NameDescriptionRequiredType
collector_idId for collectorYesString
emailEmail-addressYesString
addToListAdd to a list (optional)NoInteger
list_idAdd to specific list (optional)NoString


CODE SAMPLE expand
PHP C#
<?php
  $apiKey = "<< secret Access Token >>";

  $apiUrl = "https://surveylabs.io/api/v01/share";
  
  $request = array();
  $request["params"] = array();
  $request["params"]["collector_id"] = "<< collector_id >>";
  $request["params"]["email"] = "john@doe.com";
  $request["params"]["list_id"] = "<< list_id >>";
  $request["params"]["addToList"] = "0";

  $requestJson = json_encode($request);

  $contentLength = isset($requestJson) ? strlen($requestJson) : 0;

  $headers = array(
    "Content-Type: application/json",
    "Content-Length: " . $contentLength,
    "Accept: application/json",
    "Authorization: Basic " . $apiKey
  );

  $curl = curl_init();

  curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
  curl_setopt($curl, CURLOPT_POSTFIELDS, $requestJson);
  curl_setopt($curl, CURLOPT_URL, $apiUrl);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
  curl_setopt($curl, CURLOPT_FAILONERROR, false);
  curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

  $rawResponse = curl_exec($curl);
  $response = json_decode($rawResponse);

?>
<!doctype html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>code example</title>
  </head>
  <body>
    <?php

	if($response->message == "Successful login.") { 
		echo "success";
		} else {  
		echo "no success";
	 }
	?>
  </body>
</html>
<!-- This example is written using C#.Net Razor syntax -->
@{
  string apiKey = "<< secret Access Token >>";
  string endpoint = "https://surveylabs.io/api/v01/share";
  dynamic paramRequest = new
  {
    param = new {
	survey_id = "<< survey_id >>",
	email = "john@doe.com",
	list_id = "<< list_id >>",
	addToList = "0"
    },
  };
  System.Net.WebClient client = new System.Net.WebClient();
  client.Headers.Add(System.Net.HttpRequestHeader.ContentType, "application/json");
  client.Headers.Add(System.Net.HttpRequestHeader.Authorization, apiKey);
  client.Headers.Add(System.Net.HttpRequestHeader.Accept, "application/json");
  var paramRequestJson = System.Web.Helpers.Json.Encode(paramRequest);
  var paramResponseJson = client.UploadString(endpoint, "POST", paramRequestJson);
  dynamic paramResponse = System.Web.Helpers.Json.Decode(paramResponseJson);
}

<!doctype html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>C#.Net Razor example</title>
  </head>
  <body>
    @{ if (paramResponse.message == "Successful login.")
      {
        <p>Success</p>
      }
      else
      {
        <p>No success</p>
      }
    }
  </body>
</html>
Email Add
POST  https://surveylabs.io/api/v01/emailAdd
Tilføjer en email-adresse til en email liste.

Det kræves at en email indsamler (collector) er oprettet. Email-adressen kan tilføjes til første liste eller en angivet liste.

NameDescriptionRequiredType
collector_idId for collectorYesString
emailEmail-addressYesString
list_idAdd to specific list (optional)NoString

Survey

Submissions
GET  https://surveylabs.io/api/v01/survey/submissions
Henter alle respondenters svar til alle spørgsmål.

Der skal angives et spørgeskemas survey_id. Pagination paramtre maxResult og pageNo bør anvendes, ellers returneres kun de første 50 records.

NameDescriptionRequiredType
survey_idId for surveyYesString
maxResultMax records pr. page (optional)NoInteger
pageNoPage number (optional)NoInteger


RESPONSE SAMPLE expand
["data"]=>
array(6) {
    ["ip"]=>
    string(0) "1.1.1.1"
    ["email"]=>
    string(0) "john@doe.com"
    ["collectortype"]=>
    string(6) "email"
    ["date_start"]=>
    string(16) "28/08/2020 14:44"
    ["date_complete"]=>
    string(16) "29/08/2020 15:03"
    ["answers"]=>
    array(1) {
      [0]=>
      array(3) {
        ["question_id"]=>
        string(32) "647b23ea2fe406bd83a87258b1255a9c"
        ["question_txt"]=>
        string(4) "How do you think about that?"
        ["answer_text"]=>
        string(3) "Yes, I like it!"
      }
    }
  }
}
Newentries
GET  https://surveylabs.io/api/v01/survey/submissions/newentries
Henter seneste færdige besvarelser af et spørgeskema indenfor en bestemt tidsgrænse.
Default tidsgrænse er 15 minutter, hvilket også er maksimale tidsgrænse.

NameDescriptionRequiredType
survey_idId for surveyYesString
timelimitMax time limit is 15 minutes (optional)NoInteger
View Surveys
GET  https://surveylabs.io/api/v01/surveys
Returnerer en liste over spørgeskemaer tilknyttet brugeren med access token.
View Collectors
GET  https://surveylabs.io/api/v01/collectors
Returnerer en liste over collectors (indsamlere) tilknyttet et spørgeskema.

NameDescriptionRequiredType
survey_idId for surveyYesString
View Lists
GET  https://surveylabs.io/api/v01/collector/list
Returnerer navne på respondenterlister tilknyttet en email-collector.

NameDescriptionRequiredType
survey_idId for surveyYesString
collector_idId for collectorYesString