Rest - Contacts - Participants: Difference between revisions
mNo edit summary |
|||
Line 43: | Line 43: | ||
curl --url <Base URL>/search?q=<query> -u<username>:<password> -H Content-Type:text/xml | curl --url <Base URL>/search?q=<query> -u<username>:<password> -H Content-Type:text/xml | ||
* query - This is a text string to use to search for in the participants records | * query - This is a text string to use to search for in the participants records | ||
You can search for any field for a specific value by setting the field as a parameter. Please refer to the schema for fieldnames. | You can search for any field for a specific value by setting the field as a parameter. Please refer to the schema for fieldnames. | ||
Line 53: | Line 52: | ||
* Updated - yyyy-mm-dd | * Updated - yyyy-mm-dd | ||
* Archived - yyyy-mm-dd | * Archived - yyyy-mm-dd | ||
==Updating a participant== | ==Updating a participant== |
Revision as of 14:25, 9 July 2012
Purpose
Used for creating, editing and deleting Participants from the Views system.
Base URL
http://app.views.coop/api/restful/contacts/participants
Schema
http://app.views.coop/api/restful/contacts/participants/schema(.xml|.json|.xsd)
Creating a participant
Once you have created your data file, you can send it using the following:
curl --url <Base URL> -u<username>:<password> -H Content-Type:text/xml -X POST -d "<xml>"
If there is a problem with creating that record, you will get a response containing all the errors, plus a copy of the translated data you supplied.
If the record was created successfully, the service will return a complete reocrd for the newly created record if the attribute id set as the newly created id.
Fetching a partcipant
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml
This will return an xml file similar to this
<?xml version="1.0" encoding="utf-8"?> <participant id="100001"> <Nickname></Nickname> <Forename>John</Forename> <Surname>Smith</Surname> ... <Created>2011-05-09 10:26:09</Created> <CreatedBy>a.user</CreatedBy> <Updated>2011-05-09 10:26:09</Updated> <UpdatedBy>a.user</UpdatedBy> <Archived>0000-00-00 00:00:00</Archived> <ArchivedBy></ArchivedBy> <Type>1</Type> <PersonID>100001</PersonID> <TypeName>participant</TypeName> </participant>
Searching for a participant
curl --url <Base URL>/search?q=<query> -u<username>:<password> -H Content-Type:text/xml
- query - This is a text string to use to search for in the participants records
You can search for any field for a specific value by setting the field as a parameter. Please refer to the schema for fieldnames.
There are also a series of fields that you use -from and -to modifiers to express a range:
- DateOfBirth - yyyy-mm-dd
- Age - int (Please note that this is in days)
- Created - yyyy-mm-dd
- Updated - yyyy-mm-dd
- Archived - yyyy-mm-dd
Updating a participant
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d "<xml>"
- id - The ID of the participant
The XML should be in the same format as the create XML. However, you only need to supply fields that you wish to update. For example:
<?xml version="1.0" encoding="utf-8"?> <participant id="100001"> <Forename>Jane</Forename> <Surname>Smith</Surname> </participant>
The above would result in updating participant 1000001's Forename and Surname values
Archiving a participant
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d '<status>1</status>'
- id - The ID of the participant
This will set the archive flag on a participant. If you set the status to 0, then it will remove the archive flag.
Deleting a participant
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X DELETE
- id - The ID of the participant
This should be used with great care as it will permenently delet a participants record.