The SmartSurvey API

Welcome to the SmartSurvey API documentation. You'll find comprehensive guides and documentation to help you start working with the SmartSurvey API as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started
Suggest Edits

surveys

Get All Surveys

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys
var request = require("request");

var options = { method: 'GET', url: 'https://api.smartsurvey.io/v1/surveys' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
  {
    "id": 123,
    "type": "survey",
    "title": "My Fresh New Survey",
    "nickname": "",
    "date_created": "2016-05-30T00:51:14Z",
    "date_modified": "2016-05-30T01:10:38Z",
    "responses": 0,
    "status": "closed",
    "survey_url": "http://www.smartsurvey.co.uk/s/SF6VF/",
    "href": "https://api.smartsurvey.io/v1/surveys/223714",
    "href_responses": "https://api.smartsurvey.io/v1/surveys/223714/responses"
  }
]

Query Params

page
int32

Which page of surveys to return.

page_size
int32

Number of surveys to return per page

sort_by
string

Field used to sort returned survey list: ‘id’, ‘title’, 'date_created’, or 'responses’. Add a comma and 'asc' or 'desc' to specify the sort order.

sort_by
string

You can add more than one sort_by to the querystring to sort by multiple fields.

 

Sort By Multiple Fields

To sort by multiple fields, you can add the "sort_by" parameter more than once in the query. The following example will sort the surveys by the survey title in ascending order and date created in descending.

https://api.smartsurvey.io/v1/surveys?sort_by=title,asc&sort_by=date_created,desc
Suggest Edits

surveys/:survey_id

View Survey Information

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "survey",
  "title": "Customer Satisfaction",
  "nickname": "First Company Customer Satisfaction",
  "date_created": "2016-03-07T13:51:07Z",
  "date_modified": "2016-03-10T15:11:10Z",
  "responses": 4479,
  "status": "open",
  "survey_url": "http://www.smartsurvey.co.uk/s/123ABCDE/",
  "theme_id": 3467,
  "question_count": 8,
  "page_count": 4,
  "href": "https://api.smartsurvey.io/v1/surveys/550",
  "href_responses": "https://api.smartsurvey.io/v1/surveys/550/responses"
}
{
  "status": 404,
  "code": "not_found",
  "message": "Survey with id '123' could not be found."
}

Path Params

survey_id
int64
required
 
Suggest Edits

surveys/:survey_id/detailed

Gets detailed information about the survey. This includes the structure such as pages, questions and options as well as survey variables.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/detailed
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/detailed
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/detailed' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/detailed")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/detailed");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/detailed"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "survey",
  "title": "Customer Satisfaction",
  "nickname": "First Company Customer Satisfaction",
  "date_created": "2016-03-07T13:51:07Z",
  "date_modified": "2016-03-10T15:11:10Z",
  "responses": 999,
  "status": "open",
  "survey_url": "http://www.smartsurvey.co.uk/s/123ABCDE/",
  "theme_id": 3467,
  "question_count": 1,
  "page_count": 1,
  "href": "https://api.smartsurvey.io/v1/surveys/123/detailed",
  "href_responses": "https://api.smartsurvey.io/v1/surveys/123/responses",
  "pages": [
    {
      "id": 741653,
      "title": "Contact Details",
      "position": 1,
      "questions": [
        {
          "id": 3093118,
          "title": "Please complete the following:",
          "position": 1,
          "choices": [
            {
              "id": 341555070,
              "choice_title": "First Name:",
              "choice_id": 26099890,
            },
            {
              "id": 341555071,
              "choice_title": "Surname:",
              "choice_id": 26099891,
              "value": "naser"
            }
          ]
        }
      ]
    }
  ]
}

Path Params

survey_id
int64
required
 
Suggest Edits

surveys

Create A New Survey

 

Query Auth

 Authentication is required for this endpoint.
posthttps://api.smartsurvey.io/v1/surveys
curl --request POST \
  --url https://api.smartsurvey.io/v1/surveys
var request = require("request");

var options = { method: 'POST', url: 'https://api.smartsurvey.io/v1/surveys' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.smartsurvey.io/v1/surveys");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "survey",
  "title": "Customer Satisfaction",
  "nickname": "First Company Customer Satisfaction",
  "date_created": "2016-03-07T13:51:07Z",
  "date_modified": "2016-03-10T15:11:10Z",
  "responses": 999,
  "status": "open",
  "survey_url": "http://www.smartsurvey.co.uk/s/123ABCDE/",
  "theme_id": 3467,
  "question_count": 8,
  "page_count": 4,
  "href": "https://api.smartsurvey.io/v1/surveys/550",
  "href_responses": "https://api.smartsurvey.io/v1/surveys/550/responses"
}

Body Params

title
string

Title of the new survey. Defaults to "Copy of {SurveyTitle}"

language
int32

Survey language, defaults to 1 which is English. Check the data types for more information.

theme_id
int32

The id of the theme. A default theme will be assigned if nothing is provided.

 
Suggest Edits

surveys/:survey_id

Copy A Survey

 

Query Auth

 Authentication is required for this endpoint.
puthttps://api.smartsurvey.io/v1/surveys/survey_id
curl --request PUT \
  --url https://api.smartsurvey.io/v1/surveys/survey_id
var request = require("request");

var options = { method: 'PUT',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://api.smartsurvey.io/v1/surveys/survey_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id"

response = requests.request("PUT", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "survey",
  "title": "Customer Satisfaction",
  "nickname": "First Company Customer Satisfaction",
  "date_created": "2016-03-07T13:51:07Z",
  "date_modified": "2016-03-10T15:11:10Z",
  "responses": 999,
  "status": "open",
  "survey_url": "http://www.smartsurvey.co.uk/s/123ABCDE/",
  "theme_id": 3467,
  "question_count": 8,
  "page_count": 4,
  "href": "https://api.smartsurvey.io/v1/surveys/550",
  "href_responses": "https://api.smartsurvey.io/v1/surveys/550/responses"
}

Path Params

survey_id
int64
required

Survey id to copy from.

Body Params

title
string

Survey title

language
string

Survey language

 

Example Usage

To copy an existing survey, enter the "id" of the survey you wish to copy and provide a title of the new survey using the "title" parameter.

https://api.smartsurvey.io/v1/surveys/123/?title=New Survey Title

The new survey object will be returned.

Suggest Edits

surveys/:survey_id

 

Query Auth

 Authentication is required for this endpoint.
deletehttps://api.smartsurvey.io/v1/surveys/survey_id
curl --request DELETE \
  --url https://api.smartsurvey.io/v1/surveys/survey_id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.smartsurvey.io/v1/surveys/survey_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "status": 200,
  "code": "success",
  "message": "Survey has been deleted."
}
{
  "status": 404,
  "code": "not_found",
  "message": "Survey with id '123' could not be found or deleted."
}

Path Params

survey_id
int64
required
 
Suggest Edits

responses

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/responses
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/responses
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/responses' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/responses")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/responses");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/responses"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
  {
    "id": 12345,
    "survey_id": 12345,
    "tracking_link_id": 12345,
    "translation_id": 12345,
    "date_started": "2016-05-30T15:53:10Z",
    "date_ended": "2016-05-30T15:53:24Z",
    "date_modified": "2016-05-30T15:53:24Z",
    "status": "completed",
    "contact_name": "test",
    "contact_email": "[email protected]",
    "contact_invitation_id": 12345,
    "ip_address": "1.1.1.1",
    "user_agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) Chrome/50.0.2661.102 Safari/537.36",
    "country": "0",
    "entry_url": "http://www.smartsurvey.co.uk/s/sample_survey/",
    "referer_url": "",
    "edit_url": "http://www.smartsurvey.co.uk/s/sample_survey/?uid=123&edit=abcdef",
    "saved": false,
    "saved_name": "",
    "saved_email": "",
    "saved_continue_url": "",
    "current_page_id": 741654,
    "manual_entry": false,
    "href": "https://api.smartsurvey.io/v1/surveys/12345/responses/12345",
    "contact_data": [
      {
      	"name" : "dob",
        "value" : "02/03/1987"
      }
    ],
    "variables": [
      {
        "id" : 10001,
      	"name" : "a",
        "label" : "Age",
        "value" : "30"
      }
    ],
    "pages": [
      {
        "id": 12345,
        "title": "Contact Details Page",
        "position": 1,
        "questions": [
          {
            "id": 3093118,
            "title": "Please complete the following:",
            "type": "open_ended",
            "sub_type": "multi",
            "position": 1,
            "answers": [
              {
                "id": 380000354,
                "type": "text",
                "choice_title": "First Name:",
                "choice_id": 26099890,
                "value": "John"
              },
              {
                "id": 380000355,
                "type": "text",
                "choice_title": "Surname:",
                "choice_id": 26099891,
                "value": "Smith"
              }
            ]
          }
        ]
      }
    ]
  }
]

Path Params

survey_id
int64
required

Query Params

completed
int32

0=Partial, 1=Completed, 2=Both - Return completed responses or partial.

since
date-time

Return responses that completed no earlier than this date

until
date-time

Return responses that completed no later than this date

filter_id
int64

Enter the filter report ID you would like to use. Other filters will be ignored.

tracking_link_id
int64

Filter by tracking link id

unique_id
string

Filter the unique (x) value

include_labels
boolean

Return text of page/question/choice labels, rather than indices only

page
int32

Which page to return.

page_size
int32

Number of rows to return per page

sort_by
string

Field used to sort returned survey list: ‘date_started’, ‘date_ended’ or 'date_modified’. Add a comma and 'asc' or 'desc' to specify the sort order.

sort_by
string

You can add more than one sort_by to the querystring to sort by multiple fields.

 

Answer Choice Fields

The answers property can contain the following fields:

id

ID of answer

type

Type of answer

choice_title

Label of the choice selected

choice_id

ID of the choice selected

row_title

Label of the row selected in a matrix

row_id

ID of the row selected

column_title

Label of the column in a matrix

column_id

ID of the column selected

dropdown_title

Label of the drop down choice in Drop Down Matrix.

dropdown_id

ID of the column selected

value

Open-ended text value

Sort By Multiple Fields

To sort by multiple fields, you can add the "sort_by" parameter more than once in the query. The following URL

https://api.smartsurvey.io/v1/surveys?sort_by=title,asc&sort_by=date_created,desc

Filter by date

The date format for the since filter must be a Unix Epoch timestamp.

So for example:
Sun, 04 Dec 2016 08:16:41 GMT

The Unix Epoch timestamp is:
1480839401

Example request:
https://api.smartsurvey.io/v1/surveys/123123/responses?completed=1&since=1480839401&include_labels=false&api_token=xxxxxxxxxxxxxxxxxx&api_token_secret=xxxxxxxxxxx

You can use the following site to see how the conversion works:
http://www.epochconverter.com/

Suggest Edits

responses/:response_id

Return the response data including all answers.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 12345,
  "survey_id": 12345,
  "tracking_link_id": 12345,
  "translation_id": 12345,
  "date_started": "2016-05-30T15:53:10Z",
  "date_ended": "2016-05-30T15:53:24Z",
  "date_modified": "2016-05-30T15:53:24Z",
  "status": "completed",
  "contact_name": "",
  "contact_email": "",
  "contact_invitation_id": 0,
  "ip_address": "::1",
  "user_agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) Chrome/50.0.2661.102 Safari/537.36",
  "country": "0",
  "entry_url": "http://www.smartsurvey.co.uk/s/sample_survey/",
  "referer_url": "",
  "edit_url": "http://www.smartsurvey.co.uk/s/sample_survey/?uid=123&edit=abcdef",
  "saved": false,
  "saved_name": "",
  "saved_email": "",
  "saved_continue_url": "",
  "current_page_id": 741654,
  "manual_entry": false,
  "href": "https://api.smartsurvey.io/v1/surveys/12345/responses/12345",
  "pages": [
    {
      "id": 12345,
      "title": "Contact Details Page",
      "position": 1,
      "questions": [
        {
          "id": 3093118,
          "title": "Please complete the following:",
          "type": "open_ended",
          "sub_type": "multi",
          "position": 1,
          "answers": [
            {
              "id": 380000354,
              "type": "text",
              "choice_title": "First Name:",
              "choice_id": 26099890,
              "value": "John"
            },
            {
              "id": 380000355,
              "type": "text",
              "choice_title": "Surname:",
              "choice_id": 26099891,
              "value": "Smith"
            }
          ]
        }
      ]
    }
  ]
}

Path Params

survey_id
int64
required
response_id
int64
required

Query Params

include_labels
boolean

Return text of page/question/choice labels and types, rather than indices only

 
Suggest Edits

responses/:response_id

Delete a survey response. Just pass the survey_id and response_id in the URL.

 

Query Auth

 Authentication is required for this endpoint.
deletehttps://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id
curl --request DELETE \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/responses/response_id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "status": 200,
  "code": "success",
  "message": "Survey response has been deleted."
}
{
  "status": 404,
  "code": "not_found",
  "message": "Response with id '123' could not be found or deleted."
}

Path Params

survey_id
int64
required
response_id
int64
required
 
Suggest Edits

exports

Get all the exported reports for a survey.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/exports
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/exports
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/exports' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/exports")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/exports");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/exports"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
    {
        "id": 56789,
        "name": "All survey responses",
        "status": "completed",
        "type": "Raw Data (.xlsx)",
        "file_extension": ".xlsx",
        "file_size": 178306,
        "file_content_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "date_requested": "2018-01-30T11:22:29Z",
        "date_started": "2018-01-30T12:09:31Z",
        "date_completed": "2018-01-30T12:09:39Z",
        "href": "https://api.smartsurvey.io/v1/surveys/123/exports/56789",
        "href_download": "https://api.smartsurvey.io/v1/surveys/1234/exports/56789/download"
    }
]

Path Params

survey_id
int64
required
 
Suggest Edits

exports/:export_id

Get all the exported reports for a survey.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 56789,
  "name": "All survey responses",
  "status": "completed",
  "type": "Raw Data (.xlsx)",
  "file_extension": ".xlsx",
  "file_size": 178306,
  "file_content_type": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
  "date_requested": "2018-01-30T11:22:29Z",
  "date_started": "2018-01-30T12:09:31Z",
  "date_completed": "2018-01-30T12:09:39Z",
  "href": "https://api.smartsurvey.io/v1/surveys/123/exports/56789",
  "href_download": "https://api.smartsurvey.io/v1/surveys/1234/exports/56789/download"
}

Path Params

survey_id
int64
required
export_id
int64
required
 
Suggest Edits

exports/:export_id/download

Get all the exported reports for a survey.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id/download"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

"UserID","UserNo","Name","Email","IP Address","Unique ID","Started","Ended","Tracking Link","Q1. Please select your gender:"
"859764","1","","","1.1.1.1","","27/07/2009 09:28:00","27/07/2009 09:30:00","Default Web Link","Male"
"859765","1","","","1.1.1.1","","27/06/2009 09:28:00","27/07/2009 09:30:00","Default Web Link","Female"

Path Params

survey_id
int64
required
export_id
int64
required
 

Depending on the file type you are trying to download, the header content-type will adjust accordingly.

Suggest Edits

exports/:export_id

Delete a tracking link. Just pass the survey_id and link_id in the URL.

 

Query Auth

 Authentication is required for this endpoint.
deletehttps://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id
curl --request DELETE \
  --url https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveys/survey_id/exports/export_id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "status": 200,
  "code": "success",
  "message": "Export report has been deleted."
}
{
  "status": 404,
  "code": "not_found",
  "message": "Tracking link with id '123' could not be found or deleted."
}

Path Params

survey_id
int64
required
export_id
int64
required
 
Suggest Edits

surveyfolders

Get all the survey folders in your account.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveyfolders
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveyfolders
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.smartsurvey.io/v1/surveyfolders' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveyfolders")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveyfolders");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveyfolders"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
  {
    "id": 1234,
    "type": "survey_folder",
    "title": "My Survey Folder",
    "href": "https://api.smartsurvey.io/v1/surveyfolders/1234"
  }
]
 
Suggest Edits

surveyfolders/:folder_id

Get single folder

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveyfolders/folder_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveyfolders/folder_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveyfolders/folder_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveyfolders/folder_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveyfolders/folder_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveyfolders/folder_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 1234,
  "type": "survey_folder",
  "title": "My Survey Folder",
  "href": "https://api.smartsurvey.io/v1/surveyfolders/1234"
}

Path Params

folder_id
int32
required
 
Suggest Edits

surveyfolders/:folder_id/detailed

Get single folder including all surveys

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed
curl --request GET \
  --url https://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/surveyfolders/folder_id/detailed"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 1234,
  "type": "survey_folder",
  "title": "My Survey Folder",
  "href": "https://api.smartsurvey.io/v1/surveyfolders/1234",
  "surveys": [
    {
      "id": 987,
      "type": "survey",
      "title": "Survey Template",
      "nickname": "",
      "date_created": "2010-02-11T17:09:41Z",
      "date_modified": "2010-02-11T17:09:41Z",
      "responses": 541,
      "status": "open",
      "href": "https://api.smartsurvey.io/v1/surveys/987"
    }
  ]
}

Path Params

folder_id
int64
required
 
Suggest Edits

contactlists

Get a list of all contact lists in your account.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.smartsurvey.io/v1/contactlists' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
    {
        "id": 123,
        "type": "email",
        "title": "Sample Contact List",
        "date_created": "2017-10-27T15:07:01Z",
        "contacts": 5325,
        "href": "https://api.smartsurvey.io/v1/contactlists/123"
    }
]
 
Suggest Edits

contactlists/:contact_list_id

Get contact list details

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists/contact_list_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists/contact_list_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "email",
  "title": "Sample Contact List",
  "date_created": "2017-10-27T15:07:01Z",
  "contacts": 5325,
  "href": "https://api.smartsurvey.io/v1/contactlists/123"
}

Path Params

contact_list_id
int32
required
 
Suggest Edits

contactlists

Insert a new email contact list.

 

Query Auth

 Authentication is required for this endpoint.
posthttps://api.smartsurvey.io/v1/contactlists
curl --request POST \
  --url https://api.smartsurvey.io/v1/contactlists
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.smartsurvey.io/v1/contactlists' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.smartsurvey.io/v1/contactlists");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
    "id": 12345,
    "type": "email",
    "title": "New Contact List",
    "date_created": "2017-11-08T15:58:31Z",
    "contacts": 0,
    "href": "https://api.smartsurvey.io/v1/contactlists/12345"
}

Query Params

title
string

The name of the contact list

 
Suggest Edits

contactlists/:contact_list_id

Delete a contact list.

 

Query Auth

 Authentication is required for this endpoint.
deletehttps://api.smartsurvey.io/v1/contactlists/contact_list_id
curl --request DELETE \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.smartsurvey.io/v1/contactlists/contact_list_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "status": 200,
  "code": "success",
  "message": "The contact list has been deleted."
}
{
  "status": 404,
  "code": "not_found",
  "message": "Tracking link with id '123' could not be found or deleted."
}

Path Params

contact_list_id
int64
required
 
Suggest Edits

contactlists/:contact_list_id/contacts

Get a list of all contacts in a contact list.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
    {
        "id": 10001,
        "contact_list_id": 123,
        "type": "contact_email",
        "name": "Test Contact 1",
        "email": "[email protected]",
        "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10001"
    },
    {
        "id": 10002,
        "contact_list_id": 123,
        "type": "contact_email",
        "name": "Test Contact 2",
        "email": "[email protected]",
        "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10002"
    }
]

Path Params

contact_list_id
int64
required
 
Suggest Edits

contactlists/:contact_list_id/contacts/detailed

Get a list of all contacts in a contact list, with a detailed view which includes any custom columns the contact may have.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/detailed"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
    {
        "id": 10001,
        "contact_list_id": 123,
        "type": "contact_email",
        "name": "Test Contact 1",
        "email": "[email protected]",
        "columns": {
            "MemberID": "123",
            "LastName": "Smith",
            "MemberType": "Student",
            "JoinedDate": "10/04/2017 16:31",
            "LastVisited": "10/04/2017 16:31"
        },
        "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10001"
    }
]

Query Params

contact_list_id
int64
 
Suggest Edits

contactlists/:contact_list_id/contacts/:contact_id

Get a single contact.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 10001,
  "contact_list_id": 123,
  "type": "contact_email",
  "name": "Test Contact 1",
  "email": "[email protected]",
  "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10001"
}

Query Params

contact_list_id
int64
contact_id
int64
 
Suggest Edits

contactlists/:contact_list_id/contacts/:contact_id/detailed

Get the details of a single contact.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed
curl --request GET \
  --url https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/contactlists/contact_list_id/contacts/contact_id/detailed"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 10001,
  "contact_list_id": 123,
  "type": "contact_email",
  "name": "Test Contact 1",
  "email": "[email protected]",
  "columns": {
    "MemberID": "123",
    "LastName": "Smith",
    "MemberType": "Student",
    "JoinedDate": "10/04/2017 16:31",
    "LastVisited": "10/04/2017 16:31"
  },
  "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10001"
}

Query Params

contact_list_id
int64
contact_id
int64
 
Suggest Edits

contactlists/:contact_list_id/contacts

Insert a new contact into a contact list.

 

Query Auth

 Authentication is required for this endpoint.
posthttps://api.smartsurvey.io/v1/contactlists/:contact_list_id/contacts
{
  "email": "[email protected]",
  "name": "Test Contact 1",
  "custom_columns": [
    {
      "name": "LastName",
      "value": "Smith"
    },
    {
      "name": "Age",
      "value": "29"
    }
  ]
}
A binary file was returned

You couldn't be authenticated

{
    "id": 10001,
    "contact_list_id": 123,
    "type": "contact_email",
    "name": "Test Contact 1",
    "email": "[email protected]",
    "columns": {
        "LastName": "Smith",
        "Age": "29"
    },
    "href": "https://api.smartsurvey.io/v1/contactlists/123/contacts/10001"
}
 
Suggest Edits

accountusers

Get a list of all user accounts under your account.

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/accountusers
curl --request GET \
  --url https://api.smartsurvey.io/v1/accountusers
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.smartsurvey.io/v1/accountusers' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/accountusers")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/accountusers");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/accountusers"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

[
  {
    "id": 123,
    "type": "account_user",
    "firstname": "John",
    "lastname": "Smith",
    "fullname": "John Smith",
    "email": "[email protected]",
    "date_created": "2017-03-06T12:45:58Z",
    "surveys": 27,
    "href": "https://api.smartsurvey.io/v1/accountusers/123"
  }
]
 
Suggest Edits

accountusers/:account_user_id

Get single account user

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/accountusers/account_user_id
curl --request GET \
  --url https://api.smartsurvey.io/v1/accountusers/account_user_id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.smartsurvey.io/v1/accountusers/account_user_id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/accountusers/account_user_id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/accountusers/account_user_id");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/accountusers/account_user_id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "account_user",
  "firstname": "John",
  "lastname": "Smith",
  "fullname": "John Smith",
  "email": "[email protected]",
  "date_created": "2017-03-06T12:45:58Z",
  "surveys": 27,
  "href": "https://api.smartsurvey.io/v1/accountusers/123"
}

Path Params

account_user_id
int64
required
 
Suggest Edits

account

Get the current API key account details

 

Query Auth

 Authentication is required for this endpoint.
gethttps://api.smartsurvey.io/v1/account
curl --request GET \
  --url https://api.smartsurvey.io/v1/account
var request = require("request");

var options = { method: 'GET', url: 'https://api.smartsurvey.io/v1/account' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.smartsurvey.io/v1/account")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.smartsurvey.io/v1/account");

xhr.send(data);
import requests

url = "https://api.smartsurvey.io/v1/account"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

{
  "id": 123,
  "type": "account_user",
  "firstname": "John",
  "lastname": "Smith",
  "fullname": "John Smith",
  "email": "[email protected]",
  "date_created": "2017-03-06T12:45:58Z",
  "surveys": 27,
  "href": "https://api.smartsurvey.io/v1/accountusers/123"
}