Surveys
Returns a list of surveys for the program. Supports filtering by name, status, partner IDs, and publisher groups.
Deleted (archived) surveys are not included in the results.
Note: When using the PartnerIds and PublisherGroups parameters, the API returns surveys that the specified partner or group is permitted to access, regardless of whether those publishers have actually responded to the survey.
The Account SID.
The program ID.
Filter surveys by name.
Filter by survey status.
Filter surveys whose access is restricted to one or more of the given partner IDs. Does not filter by which partners responded.
Filter to surveys whose access is restricted to one or more of the given publisher group names. Does not filter by which partners responded.
A list of surveys.
Bad request — invalid request or validation failure.
Resource not found.
Internal server error.
GET /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys HTTP/1.1
Host: api.impact.com
Accept: */*
{
"Surveys": [
{
"Id": 789,
"Name": "Partner Onboarding Survey",
"Description": "Survey for new partners joining the program",
"StartDate": "2026-06-01T00:00:00Z",
"EndDate": "2026-12-31T23:59:59Z",
"Status": "Active",
"CoverImageUrl": "https://example.com/images/onboarding-cover.png",
"QuestionsCount": 2,
"ResponsesCount": 14,
"CreatedDate": "2026-05-20T09:30:00Z",
"UpdatedDate": "2026-05-22T16:45:00Z"
},
{
"Id": 802,
"Name": "Q3 Content Preferences",
"Description": "Understand partner content categories",
"StartDate": "2026-07-01T00:00:00Z",
"EndDate": null,
"Status": "Upcoming",
"CoverImageUrl": "https://example.com/images/q3-cover.png",
"QuestionsCount": 3,
"ResponsesCount": 0,
"CreatedDate": "2026-06-10T11:00:00Z",
"UpdatedDate": "2026-06-10T11:00:00Z"
}
]
}Creates a survey. Requires a name and a list of questions. Optional fields include dates, timezone, cover image URL, and partner/group restrictions.
Warning: Only surveys with no access restrictions and no scheduled dates can be added to your partner sign-up page. If you set RestrictToPartners, RestrictToGroups, StartDate, or EndDate, the survey can't be selected as a sign-up survey. See Add a Survey to the Partner Sign-Up Page.
The Account SID.
The program ID.
Name of the survey.
Description of the survey.
Start date (ISO 8601).
End date (ISO 8601).
IANA timezone ID (e.g. America/New_York, UTC). Stored for reference.
URL for the survey cover image. If not provided, the brand's logo is used. Supported file extensions: gif, jpg, png, and webp.
Set of partner IDs to restrict the survey to.
Set of group names to restrict the survey to. Group names are case-sensitive.
The created survey.
Automatically calculated from the date range. Active = no restrictions or currently within range; Upcoming = start date in the future; Expired = end date in the past.
Bad request. This can occur when:
- The Account SID in the path is invalid
- The survey name is missing
- No questions are provided
- A question is missing its question text
- A question is missing a
CustomFieldId - The same custom field is used on more than one question in the survey
- A
Timezoneis provided but is not a valid IANA timezone ID - A
CoverImageUrlis provided but its file extension is unsupported - The survey name exceeds 255 characters, or a question's text exceeds 191 characters
Resource not found.
Internal server error.
POST /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys HTTP/1.1
Host: api.impact.com
Content-Type: application/json
Accept: */*
Content-Length: 389
{
"Name": "Partner Onboarding Survey",
"Description": "Survey for new partners",
"StartDate": "2026-06-01",
"EndDate": "2026-12-31",
"Timezone": "America/New_York",
"RestrictToPartners": [
1001,
1002
],
"Questions": [
{
"Question": "What is your website URL?",
"CustomFieldId": 42,
"ResponseRequired": true
},
{
"Question": "What is your region?",
"CustomFieldId": 43,
"ResponseRequired": false,
"ResponseEditable": true
}
]
}{
"Id": 1,
"Name": "text",
"Description": "text",
"StartDate": "2026-01-01T00:00:00.000Z",
"EndDate": null,
"Status": "Active",
"CoverImageUrl": "text",
"QuestionsCount": 1,
"ResponsesCount": 1,
"CreatedDate": "2026-01-01T00:00:00.000Z",
"UpdatedDate": "2026-01-01T00:00:00.000Z",
"Questions": [
{
"Id": 1,
"Question": "text",
"CustomFieldId": 1,
"ResponseRequired": true,
"ResponseEditable": true,
"Rank": 1,
"CustomField": {
"Id": 1,
"Name": "text",
"Description": "text",
"DisplayType": "Paragraph",
"Enumerations": [
{
"Id": 1,
"Value": "text"
}
]
}
}
]
}Returns full survey details, including all questions and their linked custom field information.
The Account SID.
The program ID.
The survey ID.
The requested survey.
Automatically calculated from the date range. Active = no restrictions or currently within range; Upcoming = start date in the future; Expired = end date in the past.
Resource not found.
Internal server error.
GET /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys/{SurveyId} HTTP/1.1
Host: api.impact.com
Accept: */*
{
"Id": 789,
"Name": "Partner Onboarding Survey",
"Description": "Survey for new partners joining the program",
"StartDate": "2026-06-01T00:00:00Z",
"EndDate": "2026-12-31T23:59:59Z",
"Status": "Active",
"CoverImageUrl": "https://example.com/images/onboarding-cover.png",
"QuestionsCount": 2,
"ResponsesCount": 14,
"CreatedDate": "2026-05-20T09:30:00Z",
"UpdatedDate": "2026-05-22T16:45:00Z",
"Questions": [
{
"Id": 10,
"Question": "What is your website URL?",
"CustomFieldId": 42,
"ResponseRequired": true,
"ResponseEditable": false,
"Rank": 1,
"CustomField": {
"Id": 42,
"Name": "Website URL",
"Description": "The partner's primary website",
"DisplayType": "Paragraph",
"Enumerations": []
}
},
{
"Id": 11,
"Question": "What is your primary region?",
"CustomFieldId": 43,
"ResponseRequired": false,
"ResponseEditable": true,
"Rank": 2,
"CustomField": {
"Id": 43,
"Name": "Region",
"Description": "Primary operating region",
"DisplayType": "Dropdown list",
"Enumerations": [
{
"Id": 100,
"Value": "Americas"
},
{
"Id": 101,
"Value": "EMEA"
},
{
"Id": 102,
"Value": "APAC"
}
]
}
}
]
}Archives the survey and its questions.
The Account SID.
The program ID.
The survey ID.
The survey was archived.
Survey not found.
Internal server error.
DELETE /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys/{SurveyId} HTTP/1.1
Host: api.impact.com
Accept: */*
{
"Status": "SUCCESS"
}Partially updates a survey. Only the fields provided are updated. Questions with an Id are updated; questions without an Id are created.
Note: You can only edit a survey if it has not yet recorded any responses. Once a response has been received, the survey can no longer be modified to ensure the integrity of the collected data.
The Account SID.
The program ID.
The survey ID.
All fields are optional. Only the fields provided are updated.
Updated name of the survey.
Updated description of the survey.
Updated start date (ISO 8601).
Updated end date (ISO 8601).
IANA timezone ID (e.g. America/New_York, UTC). Stored for reference.
Updated cover image URL.
Set of partner IDs to restrict the survey to.
Set of group names to restrict the survey to. Group names are case-sensitive.
The updated survey.
Automatically calculated from the date range. Active = no restrictions or currently within range; Upcoming = start date in the future; Expired = end date in the past.
Bad request — invalid request or validation failure.
Resource not found.
Internal server error.
PATCH /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys/{SurveyId} HTTP/1.1
Host: api.impact.com
Content-Type: application/json
Accept: */*
Content-Length: 221
{
"Name": "Creator Onboarding Survey",
"Questions": [
{
"Id": 10,
"Question": "What is your favorite color?",
"CustomFieldId": 42,
"ResponseRequired": true
},
{
"Question": "How old are you?",
"CustomFieldId": 44,
"ResponseRequired": false
}
]
}{
"Id": 789,
"Name": "Creator Onboarding Survey",
"Description": "Survey for new creators joining the program",
"StartDate": "2026-06-01T00:00:00Z",
"EndDate": "2026-12-31T23:59:59Z",
"Status": "Active",
"CoverImageUrl": "https://example.com/images/onboarding-cover.png",
"QuestionsCount": 2,
"ResponsesCount": 0,
"CreatedDate": "2026-05-20T09:30:00Z",
"UpdatedDate": "2026-06-18T10:15:00Z",
"Questions": [
{
"Id": 10,
"Question": "What is your favorite color?",
"CustomFieldId": 42,
"ResponseRequired": true,
"ResponseEditable": false,
"Rank": 1,
"CustomField": {
"Id": 42,
"Name": "Favorite color",
"Description": "The creator's favorite color",
"DisplayType": "Dropdown list",
"Enumerations": [
{
"Id": 100,
"Value": "Red"
},
{
"Id": 101,
"Value": "Blue"
},
{
"Id": 102,
"Value": "Green"
}
]
}
},
{
"Id": 12,
"Question": "How old are you?",
"CustomFieldId": 44,
"ResponseRequired": false,
"ResponseEditable": false,
"Rank": 2,
"CustomField": {
"Id": 44,
"Name": "Age",
"Description": "The creator's age",
"DisplayType": "Number",
"Enumerations": []
}
}
]
}Returns deduplicated responses, showing only the most recent answer per question per user. Supports filtering by partner ID, question ID, and date range.
The Account SID.
The program ID.
The survey ID.
Filter responses by one or more partner IDs.
Filter responses by one or more question IDs.
Filter responses from this date (ISO 8601, e.g. 2026-01-01).
Filter responses up to this date (ISO 8601, e.g. 2026-06-30).
A list of survey responses.
Resource not found.
Internal server error.
GET /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys/{SurveyId}/Responses HTTP/1.1
Host: api.impact.com
Accept: */*
{
"Responses": [
{
"Id": 5001,
"QuestionId": 10,
"Question": "What is your website URL?",
"PartnerId": 1001,
"PartnerName": "Acme Media",
"UserId": 30501,
"UserEmail": "jordan@acmemedia.com",
"ResponseValue": "https://www.acmemedia.com",
"ResponseDate": "2026-06-05T14:22:00Z",
"CustomFieldId": 42
},
{
"Id": 5002,
"QuestionId": 11,
"Question": "What is your primary region?",
"PartnerId": 1001,
"PartnerName": "Acme Media",
"UserId": 30501,
"UserEmail": "jordan@acmemedia.com",
"ResponseValue": "101",
"ResponseDate": "2026-06-05T14:23:00Z",
"CustomFieldId": 43
}
]
}Uploads a cover image for the survey. Uploading a cover image is optional — if no cover image is set, the brand's logo is used.
The Account SID.
The program ID.
The survey ID.
Cover image file. Supported file extensions: .png, .jpg, .jpeg, .gif, .webp. Maximum file size: 20 MB.
Returns the full survey detail with the updated cover image URL (same structure as Get a Survey).
Bad request. This can occur when:
- The file extension is not one of
.png,.jpg,.jpeg,.gif, or.webp - The file exceeds the maximum file size of 20 MB
Survey not found.
Internal server error.
POST /Advertisers/{AccountSid}/Programs/{ProgramId}/Surveys/{SurveyId}/CoverImage HTTP/1.1
Host: api.impact.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 27
{
"CoverImageFile": "binary"
}{
"Status": "SUCCESS",
"Body": {
"Id": 789,
"Name": "Partner Onboarding Survey",
"CoverImageUrl": "https://cdn.example.com/uploaded-cover.png"
}
}Last updated
