Please help us help you and fill where relevant:
LimeSurvey version:
6.10.2
Own server or LimeSurvey Cloud:
Survey theme/template:
==================
Hello everyone,I am looking for a way to connect LimeSurvey to a CSV database via API to automate participant assignment based on predefined conditions. The main goal is to
perform a randomization process in Stata, export the results to a
CSV file, and potentially host it on
Google Sheets if it simplifies integration with LimeSurvey’s API.Participants are
unknown in advance, so we cannot use tokens or pre-assignments. Instead, when a participant accesses the survey, they answer a few key questions such as
gender, age, and profession. Based on their responses, they should receive a
specific treatment (e.g., be assigned to a particular condition or quota). The treatment is already determined in the
CSV file, which was generated through Stata’s randomization process.Currently, manually importing the CSV into LimeSurvey is inefficient, so we need a
dynamic solution where:
- The randomization is done in Stata, and the output CSV is stored in a way that can be accessed by LimeSurvey.
- If necessary, the CSV is hosted on Google Sheets to facilitate API integration.
- When a participant completes the initial demographic questions, LimeSurvey should query the CSV (or Google Sheets) to retrieve the correct treatment based on their answers.
Since participants are not pre-registered and do not have tokens, we need a
real-time assignment process that selects the next available row in the dataset while respecting quota constraints.What is the best approach to dynamically connect LimeSurvey to an external CSV via API without using tokens?
Would hosting the CSV on Google Sheets simplify integration?
How can we ensure that each new participant is assigned a treatment in real time while following the predefined allocation rules?Any insights or suggestions would be greatly appreciated.
Thank you!