Skip to main content
When a participant is invited and clicks through on the scheduling or project link that you provide, Respondent will append multiple URL parameters to that link so that you can associate the participant arriving to your project or scheduling tool with the participant that you invited without having to request their email address or other PII. As a reminder, requesting PII of participants sourced through the Respondent API is in violation of our terms of service. We recommend that you extract all parameters as they are used in different API endpoints. Those parameters include:
  • respondent_profile_id — set to the profileId provided in the GET Screener Response response and used in the GET Profiles endpoint call and other endpoints that require profileId
  • respondent_user_id — set to the userId provided in the GET Screener Response response and used in the Messaging API endpoints if needed
  • respondent_project_id — set to the id provided in the POST Projects Response and used throughout the API to update and status the project, get and status screener responses, and in multiple other endpoints
  • respondent_screener_response_id — set to the id provided in the GET Screener Response endpoints and used throughout the API to get and status screener responses
In some cases, we will also append duplicate parameters participant_id and project_id. These are equivalent to respondent_user_id and respondent_project_id respectively but may not always be present in the link when the participant arrives at your project or scheduling tool. All four parameters (respondent_profile_id, respondent_user_id, respondent_project_id, and respondent_screener_response_id) are always appended together — you cannot configure Respondent to send only a subset. If you only need one identifier (for example, a participant ID), extract the parameter you care about (typically respondent_user_id or respondent_profile_id) and ignore the rest. Your own platform’s parameter names (such as rid, pid, or participant_id in your URL) are not recognized or remapped by Respondent — they are treated as opaque query string and preserved as‑is. If you have added your own URL parameters into the project or scheduling link, we will simply append the above parameters to the end of that URL. Respondent detects whether your link already contains a ? and joins with & accordingly, so pre-existing parameters like ?src=respondent are preserved. Example with a pre-existing parameter:
  • Project link: https://www.researchplatform.com/123456?src=respondent
  • URL when participant arrives: https://www.researchplatform.com/123456?src=respondent&respondent_profile_id=123456789abcdefghij&respondent_project_id=987654321jihgfedcba&respondent_screener_response_id=abcdefghij123456789&respondent_user_id=jihgfedcba987654321
For unmoderated studies and surveys, Respondent also generates a separate completionUrl that you can redirect participants to at the end of the task to mark it as complete. The cc parameter on that URL is unrelated to the parameters above. See Completion URL for details. Examples:
Last modified on July 10, 2026