We're trying to put together a survey solution which allows us to send links to our surveys to users via SMS. I know we could simply take the surveymonkey survey url and send it, but we want the same unique respondent tracking that you get via email, so we can break down responses by respondent group. So to achieve that, every respondent would need a custom, trackable url for each survey.
I see that when you send the survey via email, you get a unique link along the lines of https://www.surveymonkey.com/s.aspx?sm=cun03M8_2br9IdNcpt0CqL9A_3d_3d
I also see in the api documentation for get_respondent_list that there's a field "recipient_id" which is described as "ID generated for recipients of survey invitations via email collectors". It's not obvious from the unique email link if the link includes the survey id and the recipient id, or if it's just a "tracking code" which gets converted to an id later. So I'm just wondering if there's a way to programmatically generate the unique link for a given respondent?
You can't use the tracking via the email collector because those must be sent via email from the Survey Monkey system. Additionally, the recipient_id that you mention is actually just an internal Survey Monkey id, and not relevant to tracking. A respondent who does two surveys would have two respondent ids.
In your case, I would use many weblink collectors, one for each survey respondent.
For each survey:
Using the API, create a survey with no collector.
For each respondent:
Create one weblink collector. At this point, it's anonymous.
Pass the weblink through a URL shortening API. For example, the bit.ly API can provide the (optional) svy.mk domain.
The bit.ly API also allows you to track metrics, so you can see who has clicked the survey link. Then you can map those to the response from the Survey Monkey API.
Repeat (with code, of course) for each respondent.
Also check out SurveySignal (www.surveysignal.com) that simplifies this capability with existing integration with Survey Monkey
Related
I am building an application that pulls data for certain surveys from survey monkey. In my application, each survey is connected to an organisation. One organisation can have multiple surveys and each survey has only one organisation.
When I pull the data for a survey (GET request on /surveys/{id}/details) I would like to be able to add the organisation id to the survey monkey response, so that I would know to which organisation is that survey connected. Is there a way to add a custom variable of this type on survey monkey ?
If adding a variable of this type is not possible, what is the best way to solve this problem ?
There isn't a good way to tag surveys in the API right now. Survey folders may be supported in the future which will allow you to move a Survey into a folder for each organisation.
In the meantime, you can add custom variables (URL GET parameters) to a response (assuming you're using a weblink collector) which would let you know which organisation that response belongs to. You need to add the custom variables on the Survey, then when sending out the weblink add the parameter, something like:
https://www.surveymonkey.com/r/2Q3RXZB?organization_id=<org_id>
Or if you're using an email collector you can put extra fields on the recipient (or custom fields on the contact, if the contact is always in that one organisation) that let you know which organisation they belong to.
Another option (which may not be very great) is setting a nickname on the Survey which could be checked against when fetching the associated survey, see the Survey API docs.
I am building a survey using Survey Monkey that may be sent out via email as well as other channels such as a link in a web page or community or a Tweet. One of the questions asks if the responded would like us to follow up with them in more detail so we need to capture their contact info. That's easy enough if we email it to them as the survey will automatically capture their email address. However, if they have followed a link instead of responded from the email that won't happen. So, I want to be able to recognize that the survey responses come from a source other than email and then ask for contact info. If it's a response to the email survey I don't want to bother the respondent with asking them that info.
So, can I configure the survey to not display the page asking for contact info if the survey is sent via email.
No, the survey design cannot be impacted by the collection method. You would need to create two separate surveys and merge the results outside of SurveyMonkey.
Do you know whether it is possible to retrieve the "friendship" network in a group of Twitter users (where #X is considered to be friend of #Y when #X follows #Y) through the new Twitter api?
In other words, given two arbitrary Twitter users, do you know whether Twitter api replies to queries whether one of them follows the other one or not, when this query is made by some third party (using different authorization credentials from the ones of the former two users)?
If yes, how's is it done?
You can use Twitter REST API
The REST APIs provide programmatic access to read and write Twitter data. Author a new Tweet, read author profile and follower data, and more. The REST API identifies Twitter applications and users using OAuth; responses are available in JSON.
Specifically, you will need to use these two calls:
GET friends
Returns a cursored collection of user IDs for every user the specified user is following (otherwise known as their “friends”).
GET followers
Returns a cursored collection of user IDs for every user following the specified user.
There is not such a query exactly as you want, with input arguments #X and #Y, but with these two you should be fine.
I am building a rails application that requires users to take a survey on Survey Monkey. How can I reliably correlate a user of my app to their Survey Monkey response, which I am pulling using the Survey Monkey API? Matching IP would work some of the time, but its not very reliable.
Thanks!
Use the 'custom id' (aka 'custom value') when sending the survey:
http://help.surveymonkey.com/articles/en_US/kb/Can-I-track-respondents-using-a-unique-ID
You can also do this with email collectors as long as you fill out the recipient correct and populate its custom value.
Then when you call get_respondent_list ask for 'custom_id' as one of the fields, this will be populated with the value you provided.
Is it possible to use event_list_attendees to get the list of attendees and their specific information for the event in order to place it onto my own custom designed ticket graphic/PDF?
For instance, I want to create my own stand alone website that links to my event, have users register/purchase tickets, then from my website via the API, I would send the user a custom email as well as a custom designed ticket specific to my event. On the ticket itself I would want to pull the attendee name and number of tickets ordered, as well as the barcode and the event information.
Yes, that is totally possible. See the page on the Eventbrite API - event_list_attendees
It should give you all the information you need.
Good luck!
You may be interested by Pygmento custom emails & tickets : https://www.pygmento.com/en/blog/eventbrite-custom-tickets-pdf/.
You can use the service customize the confirmation email and pdf ticket using any variable from Eventbrite : given name, surname, ticket class, barcode, or even the user-defined checkout fields.