Rest - Contacts - Participants - Questionnaires: Difference between revisions
Line 60: | Line 60: | ||
The results are order by the most recent first. This means to get the latest version of a questionnaire, you would only need to fetch the first result. | The results are order by the most recent first. This means to get the latest version of a questionnaire, you would only need to fetch the first result. | ||
==Fetching the answers of a given questionnaire== | |||
curl --url <Base URL>/<questionnairId>/<answerSetId> -u<username>:<password> -H Content-Type:text/xml | |||
* questionnaireId - This is the id of the questionnaire | |||
* answerSetId - This is the id of the Answers Set you want to retrieve | |||
It's will return somethinga along the lines of | |||
<answerset questionaireid="14" answersetid="1"> | |||
<EntityType>Person</EntityType> | |||
<EntityID>1</EntityID> | |||
<TargetType/> | |||
<TargetID>0</TargetID> | |||
<Date>2012-07-31T10:00:00</Date> | |||
<answers count="9"> | |||
<answer id="78"> | |||
<QuestionID>78</QuestionID> | |||
<Answer>Fully Agree</Answer> | |||
</answer> | |||
<answer id="79"> | |||
<QuestionID>79</QuestionID> | |||
<Answer>Truly Agree</Answer> | |||
</answer> | |||
<answer id="80"> | |||
<QuestionID>80</QuestionID> | |||
<Answer>Agree</Answer> | |||
</answer> | |||
... | |||
</answers> | |||
</answerset> |
Revision as of 10:54, 3 August 2012
Purpose
Used for submitting answer sets to questionnaires against participants and for retrieving the details of answered questionnaires that have been submitted against a participant. This is only really a filtered version of the Questionnaires - Answers API
Base URL
http://app.views.coop/api/restful/contacts/participants/<id>/questionnaires
- id - This is the participant id
Schema
For details of the schemas, please refer to Rest - Evidence - Questionnaires - Answers
Fetching a list of answer sets
The default call will return a list of questionnaires (answer sets) that have been recorded against the participant
curl --url <Base URL> -u<username>:<password> -H Content-Type:text/xml
This will return data similar to the following:
<answersets count="7"> <answerset id="1" questionnaireid="14"> <EntityType>Person</EntityType> <EntityID>1</EntityID> <Date>2012-07-31T10:00:00</Date> <QuestionnaireID>14</QuestionnaireID> <AnswerSetID>1</AnswerSetID> <Questionnaire>Impact</Questionnaire> </answerset> <answerset id="4" questionnaireid="5"> <EntityType>Person</EntityType> <EntityID>1</EntityID> <Date>2012-05-04T10:11:00</Date> <QuestionnaireID>14</QuestionnaireID> <AnswerSetID>4</AnswerSetID> <Questionnaire>Interests</Questionnaire> </answerset> ... </answersets>
If you are only interested in a particular questionnaire, you should us the following:
curl --url <Base URL>/<questionnairId> -u<username>:<password> -H Content-Type:text/xml
This will return data similar to the following:
<answersets count="2"> <answerset id="1" questionnaireid="14"> <EntityType>Person</EntityType> <EntityID>1</EntityID> <Date>2012-07-31T10:00:00</Date> <QuestionnaireID>14</QuestionnaireID> <AnswerSetID>1</AnswerSetID> <Questionnaire>Impact</Questionnaire> </answerset> <answerset id="6" questionnaireid="14"> <EntityType>Person</EntityType> <EntityID>1</EntityID> <Date>2012-05-02T09:10:00</Date> <QuestionnaireID>14</QuestionnaireID> <AnswerSetID>6</AnswerSetID> <Questionnaire>Impact</Questionnaire> </answerset> </answersets>
The results are order by the most recent first. This means to get the latest version of a questionnaire, you would only need to fetch the first result.
Fetching the answers of a given questionnaire
curl --url <Base URL>/<questionnairId>/<answerSetId> -u<username>:<password> -H Content-Type:text/xml
- questionnaireId - This is the id of the questionnaire
- answerSetId - This is the id of the Answers Set you want to retrieve
It's will return somethinga along the lines of
<answerset questionaireid="14" answersetid="1"> <EntityType>Person</EntityType> <EntityID>1</EntityID> <TargetType/> <TargetID>0</TargetID> <Date>2012-07-31T10:00:00</Date> <answers count="9"> <answer id="78"> <QuestionID>78</QuestionID> <Answer>Fully Agree</Answer> </answer> <answer id="79"> <QuestionID>79</QuestionID> <Answer>Truly Agree</Answer> </answer> <answer id="80"> <QuestionID>80</QuestionID> <Answer>Agree</Answer> </answer> ... </answers> </answerset>