Specifically, I'm trying to figure out:
- Can standard Survey objects (like Survey, SurveyQuestion, SurveyResponse) be created/managed programmatically or manually without configuring Digital Experiences (Communities)?
- Is it possible to capture survey responses internally without generating or distributing a public Survey Invitation Link?
Any advice, limitations, or alternative approaches would be greatly appreciated!
#Salesforce Admin #Salesforce Developer #Agentforce #Trailhead
Good questions — here is the accurate breakdown:
Q1 (avoid Digital Experiences entirely): not quite — enabling Digital Experiences is a one-time org prerequisite to switch the Surveys feature on. But that is just a setting; you do not have to build, publish, or expose any public-facing site to use surveys internally.
Q2 (internal capture without a public link): yes. The Experience Cloud Site selection is only required when you invite unauthenticated/external people (contacts, leads, anonymous). For internal authenticated Salesforce users you send the survey to them directly (send-to-list / internal recipients), and responses land on SurveyInvitation and SurveyResponse with no public link involved.
On authoring: Survey and SurveyQuestion are design-time records built in the Survey Builder UI, not something you create in bulk via API — the builder is the supported authoring path. The response objects (SurveyResponse, SurveyInvitation, SurveySubject) are created at runtime and are fully queryable and reportable.
Alternative: if you want zero Experience Cloud dependency and full schema control, a Screen Flow writing to a custom object is often the cleaner internal-only pattern — no Digital Experiences at all, and you own the data model. Use standard Surveys for the built-in survey UX and scoring; use Flow-to-custom-object for purely internal structured capture.
if this helps, please mark it as the Best Answer so it helps the next person — thanks 🙂