1. --- Start Here ---
  • Supplier API
    • Supplier API – FAQ
    • HTTP Status Codes
    • --- Start Here ---
      • Onboarding Process
      • Mapping
      • Survey Inventory Management
      • Respondent-Survey Flow
      • Statuses, Term Reasons & Categories
      • Onboarding Checklist
      • API Call Flow
      • Frequently Asked Questions (FAQ)
      • Complete Validation Notifications
    • --- APIs ---
      • Lookup Question Library
        GET
      • Set Global redirect URLs and Pixels for supplier’s
        PUT
      • Delete Global redirect URLs and Pixels for supplier’s account
        DELETE
      • Core Metadata Fields
        GET
      • Get Question Categories
        GET
      • Get Allocated Surveys (all live surveys)
        GET
      • Get Allocated Surveys By Id
        GET
      • Get Allocated Surveys By Date (live surveys only)
        GET
      • Get Allocated Surveys With Pagination (live surveys only)
        GET
      • Get Redirect Method for Survey
        GET
      • Set Redirect Method for Survey
        PUT
      • Delete Redirect Method for Survey
        DELETE
      • Get Closed Survey List (allocated to supplier only)
        GET
      • Get Survey Transactions data
        GET
      • Get Survey Transactions data By Date Range
        GET
      • Survey Allow for Unique IP
        POST
      • Allow Unique PID & IP
        POST
      • Get Panellist Profiling
        GET
      • Survey Availability Endpoint
        GET
      • Get Survey Stats data By Date Range
        GET
      • Get Questions By Category
        GET
      • Answer Lookup
        GET
      • Get Survey Transactions data By PID and survey number
        GET
      • Get PIDs for re-contact surveys (studies)
        GET
      • Get survey stats
        GET
      • Set Panellist Profiling
        POST
      • Update Panellist Profiling
        PUT
      • Get surveys for respondent
        POST
      • Respondent Pre Survey Check
        POST
      • Single Term Reason Category Code
        GET
      • Term reason category
        GET
      • Get Allocated High Priority Surveys(All Live Surveys)
        GET
      • Get Survey Targeting
        GET
      • Get Quota for Survey
        GET
  • Buyer API
    • Buyer API - FAQ
    • Create Job
    • Update Job
    • Get Job Details
    • Update Job Status
    • Get Job List By Status
    • Create Group
    • Update Group
    • Get Group Details
    • Update Group Status
    • Add Target to group
    • Update Target to group
    • Remove Target Question
    • Add Quota to Group
    • Update Group Quota
    • Get Group Quotas
    • Get Group Feasibility
    • Feasibility (Find estimates)
    • Questions Library
    • Get Job Stats
    • Get Group Stats
    • Get Group Quota Stats
  • Text Analyzer API
    • Text Analyzer API - FAQ
    • API Details
  • Postbacks/Redirects
    • Redirect URL
    • PostBack URL
    • Hashing Mechanism
  • View Change Log
    • View Change Log
  • Schemas
    • Supplier API
      • surveyTransModel1
      • surveyTransModel2
      • surveyTransModel3
      • questionCategoryModel
      • termCatModel
      • questionModel
      • surveyTargetingModel
      • surveyStatsModel
      • surveyStatsByIdModel
      • respondentPreSurveyCheckModel
      • getAllocatedSurveysModel
      • surveyStatusModel
      • closedSurveyModel
      • surveyStatsModel
      • respondantQualificationModel2
      • answerModel
      • surveyRedirectsModel
      • accountUrlsModel
      • accountUrlsModel2
      • recontactSurveyModel
      • deleteUpdatesurveyRedirectsModel
      • masterDataModel
      • quotaModel
      • commonSurveyTransaModel
    • Buyer API
      • Create Job
      • UpdateJob
      • GetJobDetail
      • UpdateJobStatus
      • GetJobListByStatus
      • CreateGroup
      • UpdateGroup
      • GetGroupDetails
      • UpdateGroupStatus
      • AddTargetToGroup
      • UpdateTargetToGroup
      • RemoveTargetQuestion
      • AddQuotaToGroup
      • UpdateGroupQuota
      • GetGroupQuotas
      • GetGroupFeasibility
      • Feasibility
      • QuestionLibrary
      • GetJobStats
      • getGroupStats
      • GetGroupQuotaStats
  1. --- Start Here ---

Complete Validation Notifications

Background#

There are instances when a client reverses/reconciles/invalidates a complete due to various reasons.
Our platform can now send you server-to-server notifications to inform you of these cases as soon as possible and allow you to take any needed action on your end.

Workflows#

The InnovateMR platform supports completes being validated and invalidated. Here are the two flows and the subtle differences.

Invalidations#

The invalidation flow is as follows
Respondent A completes Survey 123
Once the survey closes and data is reviewed, Survey 123's Client rejects Respondent A's complete due to a qulity issue. Client informs InnovateMR.
InnovateMR Ops team invalidates Respondent A's complete on Survey 123.
InnovateMR API platform issues a server-to-server notification indicating that the associated complete has been invalidated. The verificationstatus will be 'invalidated'

Validations#

Additionally, the InnovateMR Ops team will also validate completes that a Client has verified. In this case the flow is very similar but the payload content is adjusted accordingly.
Respondent B completes Survey 123
Once the survey closes, or before, and data is reviewed, Survey 123's Client validates Respondent B's complete. Client informs InnovateMR.
InnovateMR Ops team validates Respondent B's complete on Survey 123.
InnovateMR API platform issues a server-to-server notification indicating that the associated complete has been validated. The verificationstatus will be 'validated'

Notification Schema#

Here's an overview of the notification payload.
PropertyData TypeDescription
surveyidintegerid of survey (group) this complete is associated with
jobidintegerid of job this complete is associated with
verificationstatusstringvalidated OR invalidated
verificationdatetimedatetime ISO8601datetime of complete verification
tokenstringInnovateMR id of survey transaction
pidstringunique respondent ID
detailsstringdetails of verification

Notification Example#

Invalidated Complete
{
"surveyid": 345133,
"jobid": 874729,
"verificationstatus": "invalidated"
"verificationdatetime": "2021-07-05T16:57:08.143Z",
"token": "T36MxJadfwdjWgviuBLNX8B",
"pid": "respondentabc123",
"details": "open end text was copy pasted"
}
Validated Complete
{
"surveyid": 59989,
"jobid": 14317,
"verificationstatus": "validated"
"verificationdatetime": "2021-07-03T06:08:17.129Z",
"token": "29ddJadfwdjWgviuBLNX8B",
"pid": "ac104b37-29dd-49f0-ada7-720ffc345627",
"details": ""
}

How to subscribe to these notifications?#

Use the Manage Account Url endpoint to
set the cmplVerificationNotifyURL to the URL that you want to receieve these notifications at
set the cmplVerificationNotifyMethod to POST

Commonly Asked Questions#

Do I have to subscribe to these?#

No. These are optional.

When are these notification sent?#

When the InnovateMR Ops team receives the list of validated/invalidated completes from the Client. For some surveys this will be done while the survey is in field, for others this can happen +30 days after the survey has closed. In short - this varies by survey and by client.

Can an Invalidated Complete be re-Validated?#

Yes, but these cases are rare and typically involve a human error in the flow in which a mistake has been made when invalidating completes for a Survey.
In these cases the InnovateMR team will re-validate the mistakenly invalidated completes which triggers another round of notifications to be sent.
Modified at 2025-09-08 07:20:21
Previous
Frequently Asked Questions (FAQ)
Next
Lookup Question Library
Built with