Can I use SurveyMonkey to record clicks, separately from sending survey mails? - surveymonkey

I want to send out a survey mail that looks like this:
Dear <customer_id>
[intro]
<a href='foo'>click here for yes</a>
<a href='bar'>click here for no</a>
Then I want to be able to get data out that looks like this (or similar):
customer_id,response
123,yes
124,
125,no
I need to use a third-party system to generate and send the emails.
My question is: can I use the SurveyMonkey API only to generate the links and collect the data? I can't use their system to send the mails, but it would be great to use SurveyMonkey for the link tracking and data aggregation.

SurveyMonkey does not offer a way to generate links that represent answers to questions. The third-party application would need to use the response creation API to generate responses, and map third-party links to the appropriate answer during generation.

Related

SurveyMonkey API: Get shared data link

I found the SurveyMonkey mobile display quite good. I am trying to better integrate it with my app. In particular, once the survey has been responded to, I want to show the "Results" (analyze page which has graphs of user responses).
One thing I realised is that user can't use the analyze url. One way to allow them to view is to create a "Shared Data Link".
I am wondering how can I do this using the SurveyMonkey API. How can I create a "Shared Data Link" using the API? Is there any other way to show the Analyze Page to users?
Response from Survey Monkey team:
Unfortunately, our API doesn't currently offer any endpoints to generate a shared data page or quickly get the data which is contained within it.

Limitations of Qualtrics API

With respect to the Qualtrics API (v3) documentation (https://api.qualtrics.com/docs/overview) there does not appear to be any means to send a GET request through a REST client to get the individual survey responses for a specific survey (I suppose that the developers figured that no would be interested in decoupling the survey results from the admin panel).
The reason why I would like to be able to submit a GET request to get survey results is for real-time data visualization purposes that do not depend on me exporting the data every so often to re-update the visualization. If Qualtrics does not support such a GET request, which service (perhaps SurveyMonkey or its ilk) best facilitates what I'm trying to build? Or do I have to build an entire survey module from scratch? (shudders)
I agree that v3.0 has some big short comings. I have no idea what they are thinking. There should be a way to retrieve a specific response using Response ID.
You can still use v2.5 of the api to do what you want.
SurveyMonkey has a REST API that allows you to fetch all your responses.
You can fetch all your responses by doing:
GET /v3/surveys/<survey_id>/responses
Which will give you a skinny payload (usually IDs only, and maybe a name or title but not in this case).
You can then get a specific response by doing:
GET /v3/responses/<response_id>
You can also fetch all responses as fatter payloads by doing:
GET /v3/surveys/<survey_id>/responses/bulk
Or, depending on your use case, for example if you have some visualization that you want to update in real-time without polling for responses you can set up a webhook.
POST /v3/webhooks
{
"name": "My Response Webhook",
"event_type": "response_completed",
"object_type": "survey",
"object_ids": ["<survey_id1>", "<survey_id2>", ...],
"subscription_url": "https://mycallback.url"
}
Where subscription_url is your callback url, and then whenever any new responses for the defined surveys come in you'll be notified to the subscription_url provided and you can then know to refresh your charts.
I have done that by getting contacts, in every contact there are object of Response history where you can get the information of a survey assigned to a respondents.

REST API support by survey monkey

I am planning to do a survey using survey monkey. I will require API support to automatically pull responses from your datasource. I looked into https://developer.surveymonkey.com/docs/methods/get_responses/ and it looks like I need to use services like curl to extract data. It also looks like I can extract data in json format. And the data that is extracted using get_responses api, returns only ids.
So my questions are:
1. Do you support REST APIs to download data?
2. Can I download data in csv format?
3. Can I download actual responses with questions and not just ids? What APIs will be return survey, questions asked and user responses?
3. Can you send me an example format of how data will look when downloaded using the APIs?
5. Finally, with $26/month subscription for one month, will I get API support? Is the API support available for free subscription?
Thanks!!
SurveyMonkey does have a REST API
You can get all responses (just ids) doing:
GET /surveys/{survey_id}/responses
See: https://developer.surveymonkey.com/api/v3/#surveys-id-responses
You can get the details and all answers to questions for a specific response by ID doing:
GET /responses/{response_id}/details
See: https://developer.surveymonkey.com/api/v3/#responses-id
Or you can do this all at once by doing
GET /surveys/{id}/responses/bulk
See: https://developer.surveymonkey.com/api/v3/#surveys-id-responses-bulk
Answered by akand074.
We only support JSON at this time.
You'll have to make a separate GET to /v3/surveys/{survey_id}/details to get the survey details, and then map it to the response data.
The format, along with response data examples can be found here.
You'll have to contact api-support#surveymonkey.com to find out.

Can I use google doc's to collect information from multiple users?

Currently I have a ASP.Net app, which display excel like form which collects data from user based on the template I setup. More I searched, I could very well use Google Doc's or Office 365 to create a excel like template and then send the link to users to enter the data. The users enter the data in the google doc template or office 365 template and I can have a common backend process which can query the docs and do what i want to do. I have couple of questions in this model
Can I create one template and send it to multiple users and they use the template to create their own document instead of overwriting my template?
Is it possible to add macros like excel in the docs/office 365?
I want the all the operation with zero foot print to client.
Thanks
Using Google Forms, you can create a form and send it as an email to your users, with their responses being automatically entered in a Google Docs spreadsheet. Then you can analyze that data in the spreadsheet using all the normal spreadsheet functionality (formulas, macros, etc).

How do I know if a specific twitter user is online or not?

How do I know if a specific twitter user is currently online by writing programs? Is there any API or data field in the web page showing this information? Both browsing Twitter webpage and using Twitter app are considered "online".
Although this information is not readily available, you can do a work around. Make use of Twitter's Streaming API: https://dev.twitter.com/docs/streaming-apis/streams/public (have a read through this document).
You'll most likely be using the POST Statuses/filter functionality (read the doc here: https://dev.twitter.com/docs/api/1/post/statuses/filter ), which will give you a JSON object with tweets based on your filters.
Make use of the parameters you'll need to specify in the URL to filter the stream (have a look through this document to learn more about it: https://dev.twitter.com/docs/streaming-apis/parameters ), in your case it'll be the follow parameter. You basically specify the twitter ID of the user you want to follow. Here's a sample JSON result of the streaming API in action https://stream.twitter.com/1/statuses/filter.json?follow=25365536 - this one in particular is following Kim Kardashian. Keep in mind that this will give you:
Tweets created by the user.
Tweets which are retweeted by the user.
Replies to any Tweet created by the user.
Retweets of any Tweet created by the user.
So in order to just stream the tweets of your desired user, you'll have to use a programming language of your choice to parse through the JSON object to find the user that actually sent the tweet (this is a little tricky, you'll have to look through the properties of the JSON object to figure it out). Once you narrow the streaming tweets to just the ones from the user though, you can then have an alert on when new tweets by this user stream and that will tell you if the user is online/using twitter at the moment.
It's not clear what you mean by "online" (browsing twitter.com? Using a Twitter app?), but in any case Twitter doesn't provide such information, thankfully.
I'm afraid such information is limited by Twitter and is not available. However you can put your question on https://dev.twitter.com/discussions and ask its developers. Good Luck
you need get user state first
then filter if around current time
then get ids
they are online
use twitter developer api
I do it for my website

Resources