If you're accessing the GetFeedback API from our EU data center, use this link: https://api.eu.getfeedback.com
The GetFeedback Reporting API is simple, modern, RESTful, and JSON-based. All API access is over HTTPS to the api.getfeedback.com domain. Appropriate HTTP verbs are used to manipulate resources.
GetFeedback.com supports a public programmatic API for all customers on GetFeedback Corporate and some GetFeedback for Salesforce plans. Customers on these plans can generate API tokens at the following location: GetFeedback > Account Settings > API
Additional technical details of the GetFeedback API can be found at www.getfeedback.com/api/v1/
At this time, the GetFeedback Support team is unable to offer consulting services for API implementation. We recommend resourcing within your organization to set up your API system.
Pass email addresses to GetFeedback via an API. Include a Call to Action button for your survey invitation and we’ll send the survey invitations out for you, just like we would send them to a list.
Note: Sending Emails with GetFeedback API
It's not possible to embed a question or custom email message using the API email tool.
Authorization: Bearer mF_9.B5f-4.1JqM
API bearer tokens should be sent in an HTTP Authorization header.
Follow the RFC 6750 spec section 2.1.
All dates or timestamps are returned and expected as ISO 8601 strings.
The Accept HTTP header must always be sent to signify the correct resource representation. At this time only application/json is supported.
A response object represents a single survey taker experience. It holds a collection of answers to every question in the survey. It also includes metadata about the taker collected by the GetFeedback system.
Get All Responses
The above command returns JSON structured like this.
GET /surveys/:survey_id/responses
Parameter | Description |
since | Timestamp from which to return responses. If set with an ISO 8601 datestamp, responses are returned in ascending timestamp ordered by the since_field (see below). If not set or an incorrect format is passed, returns responses in descending timestamp order by created_at. |
since_field | If using since, date on responses to compare to. Can be created_at, updated_at, or completed_at. When set to completed_at, status is filtered to only completed responses. Defaults to created_at. |
until | If using since, timestamp to which to return responses. If set with an ISO 8601 datestamp, it will be the endcap date to the since param. |
status | Can be set to started or completed and then only responses in that state will be returned. If not set, returns all responses. |
per_page | Responses to return per page. Defaults to 30. Maximum 100. |
page | Page number when paging through responses. Note there is no server cursor state. |
Merge_map: Parameters that were appended to the URL when the taker opened the survey.
component_id: Identifier for the survey question the answer represents.
Note: Responses are returned in descending timestamp order by created_at.
The above command returns JSON structured like this.
Parameter | Description |
id | The id of the response to retrieve. |
survey_id | The id of the parent survey of the response to retrieve. |
Send to multiple recipients with one API call.
Recommended Uses: Send to List
It's best to use the Send to List feature to send emails to a group of people, not individuals. Using Send to List to email individual respondents can cause your survey to break, and you may not be able to view responses in GetFeedback.
POST /responses
Parameter | Description |
survey_id | Survey ID |
anonymize | When true, disables click & open tracking as well as disallows relating responses to recipient records |
from_email_name | Sender's name |
from_email_domain subject | Sender's email domain Email invite subject |
title | Email invite title |
body | Email invite body |
button_label | Email invite button label |
subscriber_list | An array of objects that include these keys: email, first_name and last_name |
Standard HTTP error codes are used to signal success and errors:
Code | Meaning |
200 | Request was successful and a representation is included in the body. |
204 | No Content: Request was successful. No body is returned. |
400 | Bad Request: There was an issue parsing your request. Check the JSON. |
422 | Unprocessable Entity: The request made an invalid state change or didn’t pass application-level validation. Check the errors returned in the body. |