Skip to main content

Managing project status

Each project status PATCH endpoint updates two key fields that control what a project is doing:
  • projectStatus: DRAFT, PAID, ARCHIVED, CLOSED
  • projectRecruitingStatus: RECRUITING, RECRUITED, PAUSED

Status transitions

There is no dedicated “stop” endpoint. To stop sourcing new applicants temporarily, pause the project. To end recruitment permanently, close the project.

Publish details

When published, the following fields are set automatically:
  • publishedAt = current time
  • expireAt = 1 month from now

Pause details

A project’s projectRecruitingStatus becomes PAUSED in two ways:
  • Manually, via PATCH …/pause.
  • Automatically, When enough qualified participants to meet the project’s targetNumberOfParticipants have applied to the project. Our recruiting algorithm dynamically sources up to 3x the target to ensure you can reach your target even if some participants do not complete the study or provide poor quality answers and need to be replaced
While a project is PAUSED:
  • Sourcing stops. New applicants can no longer apply through matching, and matching/recruitment emails are not sent.
  • Auto-invites keep flowing. Applicants who were already qualified before the pause continue to receive invitations on their normal automations.invite schedule, up to the project’s invite cap (or completes cap for invite-to-complete flows). Participants who have already been invited can still schedule, attend, and be paid.
In other words, PAUSED means “stop sourcing new applicants” — not “stop inviting.” This matters most for invite-to-complete integrations, where completion volume, not invite volume, determines when recruitment is finished; the project will keep auto-inviting qualified applicants (subject to eligibility and quota checks) even while paused. To resume sourcing after an auto-pause, unpause the project with PATCH …/pause (the same endpoint toggles the status). There is no separate response-count limit for resuming. Unpausing is available on any PAID project. The only caps that govern recruitment are targetNumberOfParticipants itself (min 1, max 500) and the 3x sourcing buffer above it. Disqualifying a participant via Qualify participant frees their spot, and Respondent automatically backfills disqualified participants.

Close details

Closing is permanent. Once a project is closed, you cannot contact participants or change any participant’s status. Pay and resolve all participants before you close. When closed, the following fields are populated:
  • closedDetails.closed = true
  • closedDetails.closedMessage = message passed in the request
  • closedDetails.closedByUserId = current user ID
  • closedDetails.closedOnDate = current time
If your project has screener responses in SCHEDULED or ATTENDED status, you will receive a 400 error with the message “Project has unpaid participants and cannot be closed”. Ensure all participants are paid before closing.
If your project has screener responses in INVITED status, you will receive a 400 error naming how many participants have an open invitation. A participant who took part but whose status was later moved back to INVITED is still owed payment, so closing is blocked until each one is resolved: mark them ATTENDED and pay them if they took part, or cancel the invitation (which returns them to PENDING) if they did not.

Editing a project after publish

PATCH /v1/projects/{projectId} accepts different fields depending on the project’s current status. Once a project is live (projectStatus: PAID), it is treated as a published project and only a limited set of fields can be modified.

Fields you can update on a live (published) project

  • publicTitle
  • publicInternalName
  • publicDescription
  • participantTimeRequiredMinutes
  • incentiveAmount
  • ndaDetails
  • externalResearcher
  • externalScreenerLink (external-screener organizations only; see External screeners)
  • unmoderatedStudyOrSurvey.deadline (Unmoderated Study and Survey projects only; the new deadline also applies to participants with an open invitation)

Fields that cannot be changed on a live project

Targeting, methodology, and recruitment-shape fields are locked once a project is published. This includes (but is not limited to):
  • targetNumberOfParticipants
  • targetResearchMethodology, typeOfResearch
  • targetMarketType, targetCountry, targetCities, targetLocationRespondentInPerson
  • targetProjectTopics, targetProfessionalIndustries, targetJobTitles, targetJobFunctions, targetAudienceSkills
  • automations (including autoinvite and autopay)
If you need to change any of these on a live project, close or archive the project and create a new one. Screener questions can still be edited after publish through the screener question endpoints, including qualifying and skip logic. Editing effectively replaces the screener: responses collected before the edit remain qualified against the original version, and only new responses are evaluated against the update. See Creating questions for the caveats. See Update a project for the full request reference.
Last modified on September 10, 2026