Skip to main contentSkip to navigationSkip to main content
QSF format reference

QSF SurveyEntry Fields: What Qualtrics Actually Validates

Every QSF file starts with a SurveyEntry object of seventeen fields. Qualtrics validates them field by field on import — most tolerate null, but a few (notably SurveyBrandID) are typed strictly and reject files that hand-built tools produce.

Fix ESDEF10 errorsFull QSF format guide

Field-by-field reference

FieldType / formatImport behavior
SurveyIDSV_ + 15 alphanumericsRemapped on import; format must match
SurveyNamestringBecomes the project name
SurveyDescriptionstring | nullnull accepted (appears in native exports)
SurveyOwnerIDUR_ idReplaced with the importing user
SurveyBrandIDstring, minLength 1null and "" rejected with ESDEF10; any non-empty placeholder passes
DivisionIDstring | nullnull accepted
SurveyLanguagelanguage codee.g. EN, ZH-S, ZH-T
SurveyActiveResponseSetRS_ idMust match the RS element PrimaryAttribute
SurveyStatusstring"Inactive" for transfer files
SurveyStartDate / SurveyExpirationDatedatetime string"0000-00-00 00:00:00" accepted for unset
SurveyCreationDate / LastModifieddatetime stringReal timestamps in native exports
CreatorIDUR_ idUsually equals SurveyOwnerID
LastAccessed / LastActivateddatetime string"0000-00-00 00:00:00" accepted
Deletednullnull in every observed export

Practical implications for generated QSF files

  • Emit all seventeen fields — partial SurveyEntry objects are the fastest way to hit type validation.
  • Give SurveyBrandID any non-empty string; never null or empty.
  • Keep SurveyActiveResponseSet consistent with the RS element elsewhere in the file.
  • Follow the ID patterns (SV_/UR_/RS_ plus 15 alphanumerics) rather than inventing formats.
  • Validate by importing into a blank project; the first validation failure hides any later ones.

SurveyEntry FAQ

In real Qualtrics exports, SurveyDescription, DivisionID, and Deleted appear as null and import fine. SurveyBrandID looks similar but is validated as a non-empty string — null or "" triggers an ESDEF10 rejection.

SurveyID is SV_ plus 15 alphanumeric characters; user IDs (SurveyOwnerID, CreatorID) use UR_; response sets use RS_; blocks use BL_. Generated files should follow the same patterns.

Placeholder dates work: native exports themselves use "0000-00-00 00:00:00" for unset dates such as SurveyStartDate and LastActivated. SurveyCreationDate and LastModified normally carry real timestamps.

No. It must be a non-empty string to pass validation, but after import the survey belongs to the importing account and brand regardless of the value in the file.